我有这个麻烦...希望能在从下拉列表中的用户名的选择自动填充文本输入框在我的形式。 用户阵列来自一个MySQL数据库。 不知道我的JavaScript正确写入。 首先是我的数组,它只会得到从数据库为$用户调用。 感谢您寻找。
<?php
$users=array
(
"User" => array
(
"0" => array
(
"id" => "6",
"username" => "bsmith",
"full_name" => "Buddy Smith"
),
"1" => array
(
"id" => "2",
"username" => "lsmith",
"full_name" => "Libbie Smith"
),
"2" => array
(
"id" => "4",
"username" => "asmith",
"full_name" => "Andy Smith"
)
)
)
?>
随后的JavaScript:
<script type="text/javascript">
var ids = new Array();
var use = new Array();
var ful = new Array();
<?php
foreach($users as $key=>$value) {
echo "ids[" . $key . "] = '" . $value['User']['id'] . "';\n";
echo "use[" . $key . "] = '" . $value['User']['username'] . "';\n";
echo "ful[" . $key . "] = '" . $value['User']['full_name'] . "';\n";
}
?>
function Choice() {
x = document.getElementById("users");
x.value = y.options[y.selectedIndex].text;
document.getElementById("ids") = ids[y.selectedIndex];
document.getElementById("use") = use[y.selectedIndex];
document.getElementById("ful") = ful[y.selectedIndex];
}
}
</script>
然后我的html:
<form name="form1" method="post" action="">
<select name="users" onChange='Choice();'><option> </option>
<?php
foreach ($users as $key=>$value) {
echo '<option value="'.$key.'">'.$value['User']['username'].'</option>';
}
?>
</select>
<p><input type="text" id="ids" name="id" ></p>
<p><input type="text" id="ful" name="full_name" ></p>
</form>