Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在AJAX调用中总是得到NULL_Javascript_Html_Ajax - Fatal编程技术网

Javascript 在AJAX调用中总是得到NULL

Javascript 在AJAX调用中总是得到NULL,javascript,html,ajax,Javascript,Html,Ajax,我想根据第一个下拉列表的值填充第二个下拉列表。为此,当我单击第一个下拉列表时,我正试图连接到我的“s_Test3_AjaxIndex.jsp”页面,以获取第二个下拉列表的结果。但是,我总是将str的值设为null,然后代码由于return语句而终止。有人能帮我找出哪里做错了,这样我就可以得到正确的选项标签值。在这里,到所需jsp的连接现在是第二部分,这里我甚至没有得到str的值。请帮忙 下面是我的test.jsp页面: 注意:脚本位于head标记中 函数sendInfo() { var s

我想根据第一个下拉列表的值填充第二个下拉列表。为此,当我单击第一个下拉列表时,我正试图连接到我的“s_Test3_AjaxIndex.jsp”页面,以获取第二个下拉列表的结果。但是,我总是将str的值设为null,然后代码由于return语句而终止。有人能帮我找出哪里做错了,这样我就可以得到正确的选项标签值。在这里,到所需jsp的连接现在是第二部分,这里我甚至没有得到str的值。请帮忙

下面是我的test.jsp页面: 注意:脚本位于head标记中

函数sendInfo() { var str=document.ajaxform.class\u class.value; var-xmlhttp; 如果(str==“”) { document.getElementById(“sectionlist”).innerHTML=“null”; 返回; } if(window.XMLHttpRequest) {//IE7+、Firefox、Chrome、Opera、Safari的代码 xmlhttp=新的XMLHttpRequest(); } 其他的 {//IE6、IE5的代码 xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”); } xmlhttp.onreadystatechange=函数() { if(xmlhttp.readyState==4&&xmlhttp.status==200) { document.getElementById(“sectionlist”).innerHTML=xmlhttp.responseText; } } open(“GET”、“s_Test3_AjaxIndex.jsp?val=“+v,true”); xmlhttp.send(); }

选课
1.
2.
3.
4.
5.











选择部分

选择类以获取节
onmouseup
更改为
onchange
。不知道为什么,但它似乎起作用。

您在MouseUp上绑定的事件在这里不是必需的,您应该使用

<select name="class_class" onchange="sendInfo()">

您需要更改此行:

xmlhttp.open("GET","s_Test3_AjaxIndex.jsp?val="+v,true);
致:


因为没有定义“v”变量。

如果
xmlhttp.readyState==4&&xmlhttp.status==200,我会在任何情况下提醒返回,让您知道,从服务器返回的目的是什么debugging@TomDoodler是的,当然,我会记住,但是你能告诉我为什么我在这里得到strnull的值吗:var str=document.ajaxform.class\u class.value;好吧,这是一个错误理解,我没有得到问题^^^,因为onChange在设置新的select值时被调用,onmouseup在值可用之前稍早就被调用。我认为变量“v”已在他发布的代码之外定义。很抱歉,这是输入错误。。我的错误。我用str替换了v,现在效果很好。谢谢Haris和Joost
xmlhttp.open("GET","s_Test3_AjaxIndex.jsp?val="+str,true);