JavaScript AJAX传递多个变量混淆

时间:2014-04-02 10:04:25

标签: javascript php jquery ajax

大家好我有一个AJAX查询我正在使用onclick函数调用,如下所示,查询成功地从我页面上的表单中发布数据 - 我可以使用我的php脚本上的数据而没有问题:

function tempFunction(obj){
        var no= $(obj).attr('id');
        $.ajax({
           type: "POST",
           url: "/tempproject/main/changepage",
           data: $('form').serialize(),
           success: function(msg){
                alert( "success: " + msg ); //Anything you want
           }
        });
        window.alert(no);
    }

但是我希望也发送变量no和表单数据,当涉及到JS时,我是一个完整的新手,所以有人能指出我如何将变量与序列化表单数据一起发送的正确方向吗?我可以以某种方式追加串行数据吗?我觉得这可能很容易,但我是JS的新手

2 个答案:

答案 0 :(得分:3)

试试这个

function tempFunction(obj) {
    var data = $('form').serializeArray();
    data.push(
        {
            no: $(obj).attr('id')
        }
    );

    $.ajax({
        type: "POST",
        url: "/tempproject/main/changepage",
        data: data,
        success: function (msg) {
            alert("success: " + msg); //Anything you want
        }
    });
    window.alert(no);
}

答案 1 :(得分:0)

您可以尝试使用jQuery Form插件。 它允许ajax透明地提交表单,而不用担心serizalization。

插件:http://malsup.com/jquery/form/

您的代码:

$('#form').ajaxSubmit({
 data: { no: $(obj).attr('id') },
 url: "/tempproject/main/changepage",
 success: function(msg){
  alert( "success: " + msg ); //Anything you want
 }
});