我有一个文本字段
<input type="text" class="text" id="txt_sh_vid" onKeyPress="vhc_record()" maxlength="4">
当我按下键时,它将调用一个函数i js
function vhc_record()
{
var data='vhc='+document.getElementById('txt_sh_vid').value;
loadXMLDoc('ship/vehicle_ship/','div_vhc',data);
document.getElementById('div_vhc').style.visibility="visible";
}
它将获取文本字段值并从数据库中搜索结果
<?php
$vhc=$_POST['vhc'];
$con=mysql_connect("localhost","root","");
if(!$con)
{
die ("error".mysql_error());
}
$db_found=mysql_select_db("oil",$con);
if($db_found)
{
$qry="select * from vehicle where vehiclenumber like '$vhc%'";
$result=mysql_query($qry);
echo "<table class='select'>
<tr>
<th>id</th>
<th>vehiclenum</th>
<th>capacity</th>
<th>owner</th>
</tr>
";
while($r = mysql_fetch_assoc($result)){
echo"<tr onclick='vhc_inv()'>";
echo"<td id='vhcid'>" .$r['vehicleid']."</td>";
echo"<td id='vhcl'>" .$r['vehiclenumber']."</td>";
echo"<td>".$r['capacity']."</td>";
echo"<td>".$r['owner']."</td>";
echo "</tr>";}
echo "</table>";
}
mysql_close($con);
原始问题是它将在第一个按键上显示整个表格,在第二个按键时它会将第一个按键值作为搜索 让我们假设 当我在textfield中写 n 时它将显示整个车辆表,当我按下 k 时,它将只显示车辆编号从 n 。当我按任何其他字母时,它只会显示有车辆编号= nk 的记录 * 我想要的是,当我在文本字段中按n时,它只会显示车辆编号从n *
开始的车辆记录答案 0 :(得分:2)
尝试使用onKeyUp事件而不是onKeyPress
例如:
<input type="text" class="text" id="txt_sh_vid" onKeyUp="vhc_record()" maxlength="4">