序列化AJAX的表单值

时间:2012-06-08 16:51:09

标签: javascript ajax forms wordpress serialization

通过WordPress,我构建了一个成功的AJAX响应表单。但是数据库中的字段为空!我猜这是因为我没有序列化我的价值观:

// JavaScript Document
jQuery(document).ready(function($){
    jQuery('#newFeedbackForm').submit(function(){
        var topic = $('#topic').val();
        var name = $('#name').val();
        var email = $('#email').val();
        var no_results_feedback = $('#no_results_feedback').val();

        var post_data = {
            action: 'addFeedback',
            topic: topic,
            name: name,
            email: email,
            no_results_feedback: no_results_feedback
        };

        $.post(av_feedback_vars.ajaxurl, post_data, function(response){
                        if(response == 'success'){
                            $('#feedback').text('Thank you for your comment.');
                        }else{
                            alert(av_feedback_vars.error_message);
                        }
        });
        return false;
    });
});

在这种情况下如何使用序列化?感谢您帮助一个菜鸟(第一次来到ajax)

1 个答案:

答案 0 :(得分:2)

正如您在http://api.jquery.com/jQuery.post/上看到的那样,数据不必序列化。 jQuery将正确格式化。

您确定所有表格数据都在那里吗?你应该检查一个工作的非ajax请求,看看发送了什么帖子数据,找出用ajax发送的内容(然后检查那个请求)。

Chrome Dev工具和Firebug非常适合“请求检查”。显然IE开发工具也是如此,但我不知道†