我想通过AJAX发布这些变量:
PHP echo $_GET['cID']?>" />
使用此脚本:
$(document).ready(function(){
$('#inner span').click(function(){
$(this).prevAll().andSelf().addClass('enabled');
var a = $(this).attr("id");
var cID = $("#inner input").attr("id");
$.ajax({
type: "POST",url: "ajax/rating.PHP",data: "value=+a+&cID=+cID+",success: function(msg){
alert(data);
}
});
});});
在click事件中,没有警报.我在$.ajax中使用了正确的数据吗?
提前致谢.
最佳答案
我强烈建议允许jQuery担心正确编码字符串:
原文链接:https://www.f2er.com/jquery/428514.htmlvar a = $(this).attr("id");
var cID = $("#inner input").attr("id");
$.ajax({
type: "POST",data: {value: a,cID: cID},// <== change is here
success: function(msg){
alert(msg);
}
});
请注意,我将数据作为对象传递到$.ajax,而不是字符串. jQuery会为你正确编码.有关详情,请参见the docs.
如果你真的,真的想自己编码,你必须明确地做:
data: "value=" + encodeURIComponent(a) + "&cID=" + encodeURIComponent(cID)
还要注意我正在警告msg,而不是数据,因为这就是你所谓的成功响应参数.