请与我一起检查这个ajax代码中发送2个参数的错误:
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
if(xhr.readyState == 4 && xhr.status == 200)
{
selects = xhr.responseText;
// On se sert de innerHTML pour rajouter les options a la liste
//document.getElementById('prjsel').innerHTML = selects;
}
};
xhr.open("POST","ServletEdition",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
id=document.getElementById(idIdden).value;
fu=document.getElementById("formUpdate").value;
//alert(fu);
var i=1;
xhr.send("id=" +id+", fu="+i);
我无法获得fu的价值我不知道为什么。 感谢
答案 0 :(得分:2)
xhr.send()的内容需要进行URL编码。例如:
xhr.send("id=1&fu=2");
基本上,xhr.send()内的任何内容都与您使用GET设置的查询字符串相同。换句话说,你发送的内容也应该在URL的末尾起作用:
http://www.mysite.com/path/to/script?id=1&fu=2
答案 1 :(得分:1)
这真的很奇怪,因为我习惯和它一起工作。 所以我换到了下一个:
xhr.send( "id="+id+"&fu="+i);
它有效。
感谢您的帮助。