我找到了使用设置数据更新表单元素以及基于下拉选择显示表格的教程。但是,我仍然无法弄清楚如何将这两件事合并在一起。正如标题中所说 - 我需要根据下拉菜单中的选择更新表单字段。到目前为止,我来到了这个:
HTML:
<html>
<head profile="http://www.w3.org/2005/20/profile">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
<script>
function showUser(str)
{
var strURL="getUser2.php?user="+str;
http('GET', strURL, ajax_response, document.form1);
}
function ajax_response(data) {
for(var key in data) {
document.form1[key].value = data[key];
}
}
</script>
</head>
<body>
<div style="margin:30px 500px">
<form name="form1">
<select name="users" onchange="ajax_request()" value="showUser(this.value)">
<option value="">new</option>
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
<option value="4">Fourth</option>
</select>
<br />
<br />
ID <input type="text" id="ID"><br>
name <input type="text" id="name"><br>
city <input type="text" id="city"><br>
</form>
</div>
</body>
</html>
PHP:
<?php
$user=$_GET["user"];
$con = mysql_connect('localhost', 'root', '');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("pophelper", $con);
$sql="SELECT * FROM phonebook WHERE ID = '".$user."'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$ID=$row['ID'];
$names=$row['names'];
$city=$row['city'];
require_once "json/JSON.php";
$json = new Services_JSON();
$value = array("ID" => $ID, "names" => $names, "city" => $city);
$output = $json->encode($value);
print($output);
mysql_close($con);
?>
我已经尝试单独运行 PHP 文件,它给出了正确的结果。但是当我从 html 运行它时,无论我选择哪个选项,字段都保持为空。
我错过了什么?先感谢您。