我知道之前有人问过这个问题,但我不是编码员(正在努力学习),所以我找不到任何看起来像我的网站通过以前的问题编码的示例或答案。
问题: 我的表格应该填充汽车品牌,然后它会自动填充模型。 (填充品牌后模型工作正常)。
但我必须在表单的初始部分上单击两次才能填充数据。
我的表单代码的顶部:
<td><b>Make:</b><br /> <span id="makesList"><select onclick="getMakes(<?php echo SITETYPE2 ?>)" onchange="getModels(this.value, <?php echo SITETYPE2 ?>)" class="required" id="makeid" name="makeid" >
Javascript/Ajax function
function getMakes(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="/getmakes.php";
url=url+"?typeid="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChangedMakes;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
你能帮帮我吗?请记住,我不是编码员,只是想了解别人编码的内容。
谢谢 标记
最佳答案
使用下拉菜单(选择)的最佳方法是使用 onchange。因为您已经触发了 onchange 事件,所以我会使用 mouseup,因为它发生在点击事件之前。此外,客户端和您的网络服务器之间可能存在延迟。尝试先点击,然后在屏幕外点击,看看是否会出现下一批结果。
此外,您的 php echo 语句末尾没有分号。这应该会报错
关于php - 两次单击以填充表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13628007/