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);