Php 单击两次以填充表单
我知道以前有人问过这个问题,但我不是一个程序员(试图学习),所以我找不到任何例子或答案,看起来像我的网站通过前面的问题编码 问题是: 我的表单应该填充汽车品牌,然后它会自动填充模型。(填充make后,模型工作正常) 但是我必须在表单的初始生成部分上单击两次,以便填充数据 我的表单代码的顶部部分:Php 单击两次以填充表单,php,javascript,ajax,forms,Php,Javascript,Ajax,Forms,我知道以前有人问过这个问题,但我不是一个程序员(试图学习),所以我找不到任何例子或答案,看起来像我的网站通过前面的问题编码 问题是: 我的表单应该填充汽车品牌,然后它会自动填充模型。(填充make后,模型工作正常) 但是我必须在表单的初始生成部分上单击两次,以便填充数据 我的表单代码的顶部部分: <td><b>Make:</b><br /> <span id="makesList"><select onclick="getMak
<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);
}
Make:
使用下拉列表(选择)的最佳方法是使用onchange。由于onchange事件已经触发,我将使用mouseup,因为这发生在click事件之前。此外,客户机和web服务器之间可能存在延迟。尝试最初单击,然后单击屏幕以查看是否会出现下一批结果
另外,php echo语句的结尾没有分号。这应该会产生一个错误问题是,在我看来,在dropdownlist中使用事件onClick并不是一个好主意,我想有一种不用点击两次就可以获得数据的方法。那会有麻烦的。谢谢你的建议。作为一名非程序员,我理解这个概念,但没有能力将其转化为有效的代码。再次感谢。没有服务器延迟