Javascript http请求问题
我想得到一个自动搜索结果,在一个页面上它可以工作,但在另一个页面上不行。你能告诉我问题是什么吗 工作:Javascript http请求问题,javascript,httpwebrequest,Javascript,Httpwebrequest,我想得到一个自动搜索结果,在一个页面上它可以工作,但在另一个页面上不行。你能告诉我问题是什么吗 工作: function showUser(str) { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft
function showUser(str)
{
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("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ordertabel.php?search="+str,true);
xmlhttp.send();
}
不工作:
function showUser(str,str)
{
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("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","klanttabel.php?search="+str"&search2="+str,true);
xmlhttp.send();
}
请注意,对于非工作代码,有2个输入
提前谢谢 可能是因为在函数方法中使用了两个同名变量,而在xmlhttp.open()方法中缺少加号 尝试: 另一个建议是,使用JQuery时进行Ajax调用要容易得多
$.ajax({
type: "GET",
url: "klanttabel.php",
data: ({search : str,
search2 : str2}),
success: function(data) {
$('#txtHint').html(data);
}
});
我想这是一个url编码问题。尝试编码:
xmlhttp.open("GET", "klanttabel.php?search=" + encodeURIComponent(str) + "&search2=" + encodeURIComponent(str), true);
还请注意,字符串连接中缺少一个
+
。您的参数名称相同。。。改变它们
function showUser(strA,strB)
并在以后的函数中更改它们:
xmlhttp.open("GET","klanttabel.php?search=" + strA + "&search2=" + strB,true);
您还出现了一个错误,其中
+
丢失。您缺少加号
xmlhttp.open("GET","klanttabel.php?search="+str"&search2="+str,true);
第一个str后的加号
xmlhttp.open("GET","klanttabel.php?search="+str+"&search2="+str,true);
在浏览器中的位置栏中尝试url或使用firebug查看http流量No我仍然无法自动搜索,如果我从上面的一个答案中得到一个,它会搜索,但不会像您单击搜索时那样合并。@AndreWoons在这种情况下,我不确定您是否发布了足够的代码。。。我们可以看到输出结果所在的HTML,以及调用此搜索函数的按钮/事件吗?如果我按enter键,它会像预期的那样工作,但只是自动搜索不起作用。另一个答案建议使用Jquery,但我该怎么做呢?我对ajax一无所知,但我想仅仅复制代码是行不通的?事实上,我试过了,但没用。有什么我需要添加以使ajax工作吗?是的,您应该在您的项目中包括标准的JQuery库,如下所示:
然后它就会工作,并且代码比您当前的代码短得多,更易于维护或调整。嗯,它现在会自动“搜索”,但不会返回任何结果。有什么我可以试试的吗?
xmlhttp.open("GET","klanttabel.php?search="+str+"&search2="+str,true);