2014-01-15 53 views
3
function ajax() { 
    $('form').submit(function() { 
    console.log($(this).serializeArray()); 
    $('#result').text(JSON.stringify($(this).serializeArray())); 
    return false; 
    }); 
} 

这是JSON数据我越来越:如何将表单数据发送到服务器以JSON格式AJAX脚本

[{"name":"firstName","value":"erere"},{"name":"lastName","value":"rere"},{"name":"emailAddress","value":"[email protected]"},{"name":"password","value":"dfdfd"},{"name":"phoneNumber","value":"989989898"}] 

我怎样才能将其发送到服务器。我应该在ajax调用中包含哪些数据?

+0

哪里是你的Ajax调用...'.submit()'不是'阿贾克斯()'调用就像你有他们BTW – bipen

+0

发送。如果你使用PHP,你可以json_decode()数据服务器端。 此外,您可以使用$(form).serialize()来获取一个简单的名称:值对以提交到您的proccess脚本 – andrew

+0

http://api.jquery.com/jquery.ajax/ – MrUpsidown

回答

3

一个简单的例子:

$('form').submit(function() { 

    $.post("send.php", $(this).serializeArray()) 
     .done(function(reply) { 
     alert("Complete, reply from server: " + reply); 
     }); 

    return false; 
}); 

参见:http://api.jquery.com/jquery.post/对处理回调信息。

+0

无论您有什么服务器端来处理表单, –

+1

我希望你可以减少评论,你需要给我们更多的信息来解释什么是错的。也许是一个错误信息,或错误发生在哪一行?据我所知,HTTP中没有555错误代码,您是否在谈论电子邮件错误? –

2

试试这个:

$('form').submit(function() { 
    var form = $(this); 
    var data = form.serialize(); 

    $.ajax({ 
     url: 'post url' 
     method: 'POST', 
     data: data, 
     success: function(resp){ 
      //action on successful post 
     }, 
     error: function() { 
      //handle error 
     } 
    }); 
    return false; 
}); 
+1

它看起来像jQuery序列化您的表单数据的问题,尝试将'form.serialize()'改为'form.serializeArray()' – James

+0

@ aRahmanS29最好先问@judder如果他打算使用'.serializeArray'方法,而不是只是编辑它,假设这是真的,因为它可能不是他的意图。 – t3chb0t

相关问题