发送多个数据参数使用jQuery AJAX
问题描述:
我发送一个Ajax请求的PHP文件如下所示:发送多个数据参数使用jQuery AJAX
function checkDB(code, userid)
{
$.ajax({
type: "POST",
url: "<?php bloginfo('template_url'); ?>/profile/check_code.php",
data: 'code='+code+'userid='+userid,
datatype: "html",
success: function(result){
if(result == 0)
{
$('#success').html(code + ' has been redeemed!');
// alert('success');//testing purposes
}
else if(result == 2)
{
$('#err').html( code + ' already exists and has already been redeemed....');
//alert('fail');//testing purposes
}else if(result == 1){
$('#err').html( code + ' redeem code doesnt exist');
}
alert(result);
}
})
}
这是发送调用提交功能,像这样:
<form method="post" class="sc_ajaxxx" id="sc_add_voucherx" name="sc_ajax"
onsubmit="checkDB(document.sc_ajax.sc_voucher_code.value, <?php echo $user_id ?>); return false;">
</form>
问题是用户标识php变量没有被ajax发送到check_code.php页面。或者至少我似乎无法将id回显到页面。
这是将多个值传递到服务器端页面的正确方法吗?没有userid传递,只需传递代码就可以正常工作。
谢谢你们:)
答
这里是POST
数据应该如何格式化:
key1=value1&key2=value2&key3=value3
在你的情况(注意&
作为分隔符):
'code=' + code + '&userid=' + userid
但jQuery也如果你指定你的数据为对象:
data: { code: code, userid: userid }
答
你应该设置你的data
像这样:
data: 'code='+code+'&userid='+userid
答
你可以试试这个:
data: 'code='+code+'&userid='+userid,
,而不是
data: 'code='+code+'userid='+userid,
答
试试这个代码...这是工作我...
<script type='text/javascript'>
$(document).ready(function(){
$(".star").click(function(){
var rate_value1= $(this).index(".star")+1;
$.ajax({
type: "POST",
dataType: "json",
url: "<?php echo(rootpath()) ?>/vote.php",
data: { product_id: '<?php echo($product_id_to_permalink) ?>' , rate_value: rate_value1 }
});
});
});
</script>
答
一般情况下将您的数据像这样帮助:
data: { code: code, userid: userid }
不要忘了最重要的一点是核实,如果您发送的变量的名称是在服务器端相同
答
Try this code...
<script>
function quote_ajax_table(){
var doc_name = '<?php echo $test; ?>';
var doc_no = '<?php echo $doc_no; ?>';
$.get('quote_ajax_table.php?doc_no='+doc_no+'&doc_name='+doc_name,function(data) {
$('.dyna').html(data);
});
}
</script>
//in html code
<div class="dyna"></div>
好,谢谢。我如何将它指定为一个对象?这是数据类型:json? – JamesG 2012-02-17 13:26:04
不,你不需要改变'dataType' - 这是jQuery应该如何解释你的响应的暗示。它发送的数据默认序列化为后期数据,例如, '代码= 17&的userid = 42'。您只需将您的数据字符串更改为我上面所写的内容即可。 – 2012-02-17 13:31:13
好吧,这是有道理的......但为什么woiuld你想设置你的dataType到JSON呢?要专门阅读JSON? – JamesG 2012-02-17 15:01:36