我正在使用基本的$ .ajax()通过jQuery执行异步HTTP(Ajax)请求。该代码如下所示:
$("textarea").blur(function(){
var thisId = $(this).attr("id");
var thisValue = $(this).val();
$.ajax({
type: "POST",
url: "some.php",
data: "id=" + thisId + "&value=" + thisValue,
success: function(){
alert( "Saved successfully!" );
}
});
});
一切正常,直到用户在textarea和(&)字符内键入为止。 比我调试PHP函数时要保存的值要多,直到此字符为止,它始终具有值。
我认为必须有一种解决方案,以某种方式跳过“&”号。有任何想法吗?
最佳答案
代替:
data: "id=" + thisId + "&value=" + thisValue
做:
data: { id: thisId, value: thisValue }
这样,jquery会正确地对值进行URL编码。字符串串联是万恶之源:-)