这里有aob到ajax的总数,我的语法有多接近?我希望第二个下拉框依赖于第一个下拉框。我知道这不是解决这个问题的最简单方法,所以任何帮助都是值得赞赏的。 acura.txt
是一个带有标记的文本文件,用于创建另一个下拉列表。谢谢大家的帮助!
JavaScript的:
function loadXMLDoc() {
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("acura").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "acura.txt", true);
xmlhttp.send();
}
HTML:
<select id="stateinjured">
<option selected="selected">Select your state</option>
<option id="acura" onClick="loadMXLDOC">Acura</option>
<option id="bmw">BMW</option>
<option id="audi">Audi</option>
<option id="benz">Benz</option>
</select>
答案 0 :(得分:0)
将<select>
标记(可能具有自己的<option>
内容)填充到<option>
标记的内容中并不起作用。这就是您的代码现在将尝试做的事情。
这段代码:
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("acura").innerHTML=xmlhttp.responseText;
}
“id”值为“acura”的元素是页面上<option>
中的<select>
个标记之一。因此,如果该响应文本仅为<select>
,那么它将会出错。
也许你只想在页面上看到另一个<span>
,或者其他东西;这取决于它应该是什么样的。
另一件事:您不想在<option>
上选择“点击”事件。可以选择(由用户)选项而不发生任何“点击”。您可能应该跟踪<select>
标记上的“更改”事件,并检查处理程序中的值。