我使用Ajax POST方法发送数据,但我无法发送'+'(运营商到服务器,即如果我想发送1 +或20k +它只会发送1或20k ..只是消灭' +') HTML代码都在这里..无法通过AJAX发送'+'?
<form method='post' onsubmit='return false;' action='#'>
<input type='input' name='salary' id='salary' />
<input type='submit' onclick='submitVal();' />
</form>
和JavaScript代码放在这里,
function submitVal()
{
var sal=document.getElementById("salary").value;
alert(sal);
var request=getHttpRequest();
request.open('post','updateSal.php',false);
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
request.send("sal="+sal);
if(request.readyState == 4)
{
alert("update");
}
}
function getHttpRequest()
{
var request=false;
if(window.XMLHttpRequest)
{
request=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
try
{
request=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
request=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
request=false;
}
}
}
return request;
}
在功能submitVal
()它第一次警报的,因为它是(薪水值,如果1+然后警报1+),但是当它发布它只是发布的值不需要'+'操作符,这是需要的... 它是查询字符串的任何问题,因为PH P的后端代码是工作的罚款...
这个问题已经回答了http://stackoverflow.com/questions/1373414/ajax-post-and-plus-sign-how-to-encode – Arib 2010-06-01 08:25:49