我想根据第一个下拉值的值填充第二个下拉列表。为此,当我点击First Dropdown时,我正在尝试连接到我的" s_Test3_AjaxIndex.jsp"用于获取第二次下拉结果的页面。但是,我总是将 str 的值设为 null ,然后代码因 return 语句而终止。有人可以帮我解决我做错的地方,以便我可以获得我的选项标签的正确值。这里,与所需jsp的连接现在是次要部分,我甚至没有得到str的值。请帮忙。
以下是我的test.jsp页面: 注意:脚本位于头标记
function sendInfo()
{
var str=document.ajaxform.class_class.value;
var xmlhttp;
if (str=="")
{
document.getElementById("sectionlist").innerHTML="null";
return;
}
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("sectionlist").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","s_Test3_AjaxIndex.jsp?val="+v,true);
xmlhttp.send();
}

<html>
<body>
<form name="ajaxform" action="#">
<select name="class_class" onmouseup="sendInfo()">
<option value='' disabled="disabled" selected="selected">Select Class</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<br><br><br><br><br><br><br><br><br><br><br>
<p>Select Section</p>
<div id="sectionlist">Select Class to get Sections</div>
</form>
</body>
</html>
&#13;
答案 0 :(得分:1)
从onmouseup
更改为onchange
。不知道为什么,但似乎有效。
答案 1 :(得分:0)
你是绑定事件onMouseUp,这里不需要,你应该使用
<select name="class_class" onchange="sendInfo()">
答案 2 :(得分:-1)
您需要更改此行:
xmlhttp.open("GET","s_Test3_AjaxIndex.jsp?val="+v,true);
为:
xmlhttp.open("GET","s_Test3_AjaxIndex.jsp?val="+str,true);
as&#34; v&#34;变量未定义。