J'utilise la méthode Ajax POST pour envoyer des données, mais je ne peux pas envoyer '+' (opérateur vers le serveur, c'est-à-dire si je veux envoyer 1+ ou 20k + j'enverrai seulement 1 ou 20k .. + ') code HTML va ici ..Impossible d'envoyer '+' via le message AJAX?
<form method='post' onsubmit='return false;' action='#'>
<input type='input' name='salary' id='salary' />
<input type='submit' onclick='submitVal();' />
</form>
et code javascript va ici,
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;
}
dans la fonction submitVal() d'abord la valeur de salaire d'alerte comme il est (si 1+ alors alertes 1+), mais quand il est posté, il suffit de poster la valeur sans opérateur '+' qui est nécessaire ... est-il un problème avec la chaîne de requête, comme le PH code back-end P fonctionne bien ...
cette question a déjà reçu une réponse http://stackoverflow.com/questions/1373414/ajax-post-and-plus-sign-how-to-encode – Arib