这是一个从组合框&中选择ID的想法。然后它会自动在html表单字段中打印数据,以便可以轻松编辑该字段。我到目前为止有2个文件 - index.html& showData.php。这是index.html文件:
<html>
<head>
<script>
function showData(str)
{
if (str=="")
{
document.getElementById("ajax-content").innerHTML="";
return;
}
// Code for IE7+, Firefox, Chrome, Opera, Safari
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
// Code for IE6, IE5
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("ajax-content").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","showData.php?id="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<select name="register" onchange="showData(this.value)">
<option value="">Select ID:</option>
<option value="001">001</option>
<option value="002">002</option>
<option value="003">003</option>
</select>
</form>
<div id="ajax-content"></div>
</body>
这是我的showData.php文件:
<?php
// Receive variable from URI
$id=$_GET["id"];
// Connect to your database
$con = mysql_connect('localhost', 'root', '');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// Select your database
mysql_select_db("test_01", $con);
// Select all fields from your table
$sql="SELECT * FROM staffdetails WHERE id = '".$id."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo "Staff Name:" . "<input type='text' value='" . $row['name'] . "'>";
echo "</br>";
echo "Contact No.:" . "<input type='text' value='" . $row['number'] . "'>";
}
// Close the connection
mysql_close($con);
?>
现在,我要做的是在表单字段中键入ID(而不是“从列表中选择”)并按Enter键(没有任何“提交”按钮< / strong>)在表单的字段上获取结果。有人可以帮忙吗?
答案 0 :(得分:1)
onkeyup
属性中提供此内容。<input onkeyup="if (event.keyCode == 13) showData(this.value); return false;" />
event
是input
发生的当前事件。当keyup
事件发生时,它有一个名为keyCode
的属性,它返回按下的键的ASCII码。 Enter 键的代码为13
。当您按 Enter 键时,甚至会发生这种情况。