[问题] 后端php接收不到特殊符号

楼主: u315521 (羊小弟)   2016-01-16 22:15:31
我从网络上抓到一个ajax自动完成的程式码,前端输入资料传到后端php,
但发现特殊符号会无法传递,例如打John & Mary,后端php只会收到John,
&之后都会消失,我查了一下,似乎是要加escape()这个函数吗,但本人是外行,
能否帮我看一下要加在哪,或是要怎么解决,感谢!
$(document).ready(function(){
$("#enname").keyup(function(){
$.ajax({
type: "POST",
url: "ajax_search.php",
data:'keyword='+$(this).val(),
dataType: "text",
beforeSend: function(){
$("#enname").css("background","#FFF url(LoaderIcon.gif) no-repeat 165px");
},
success: function(data){
$("#suggesstion-box").delay(1000).show();
$("#suggesstion-box").delay(1000).html(data);
$("#enname").css("background","#FFF");
}
});
});
$("#enname").blur(function(){
$("#suggesstion-box").delay(100).hide(100);
});
});
function selectCountry(val) {
$("#enname").val(val);
$("#suggesstion-box").hide();
}
</script>
作者: oToToT (屁孩)   2016-01-16 22:36:00
data: encodeURIComponent(keyword='+$(this).val()),后端收到后再decode
楼主: u315521 (羊小弟)   2016-01-16 23:48:00
感谢回复,我试了好像不行,但我改用以下这样就可以了data:'keyword='+$(this).serialize(),
作者: Darkland (小黑XDrz)   2016-01-17 15:43:00
应该是 data: "keyword=" + encodeURIComponent(..)
作者: oToToT (屁孩)   2016-01-17 17:27:00
对吼,忘记=也会被encode了

Links booklink

Contact Us: admin [ a t ] ucptt.com