Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery和表单插件引用JSON响应发布表单数据_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 使用jQuery和表单插件引用JSON响应发布表单数据

Javascript 使用jQuery和表单插件引用JSON响应发布表单数据,javascript,jquery,ajax,Javascript,Jquery,Ajax,我很难理解如何使用jQuery及其表单插件访问HTTP post操作返回的数据 例如,我希望将来自浏览器的数据发布到表单中,在服务器上处理数据,将服务器响应(JSON格式)返回到浏览器,并在警报中向用户显示有关该响应的信息,而无需重写表单 我认为以下jQuery代码可以做到这一点: $(document).ready(function() { $('#ajaxFormSubmit').bind('click', function(event) { $('#data_ent

我很难理解如何使用jQuery及其表单插件访问HTTP post操作返回的数据

例如,我希望将来自浏览器的数据发布到表单中,在服务器上处理数据,将服务器响应(JSON格式)返回到浏览器,并在警报中向用户显示有关该响应的信息,而无需重写表单

我认为以下jQuery代码可以做到这一点:

$(document).ready(function() {
    $('#ajaxFormSubmit').bind('click', function(event) {
        $('#data_entry_form').ajaxSubmit({
            url: "data_entry_ajax",
            dataType: "json",
            success: function(data) {
                alert('Success');
                alert(data.save_status);
            }
        });
    });
});
服务器在JSON对象中返回以下内容:

{'save_status': 'OK', 'id_number': 2}
但是,浏览器没有显示表单和用户输入数据上的两个警报,而是清除表单并显示JSON回复

我认为提交给ajaxSubmit的选项中的“success”值会自动传递给从服务器收到的响应。我尝试了各种将参数传入函数体的排列方式(引用
数据
而不传入,引用
responseText
而不传入任何内容),但这些都不起作用

我看了“jQuery-In-Action”,试图了解如何访问对xhr对象和.ajax()函数的响应,但这也没有帮助。

尝试使用


// ...
$('ajaxFormSubmit').bind('click',函数(事件){
美元邮政(
“数据输入\u ajax”,
$('#数据项_表单')。序列化(),
功能(数据){
警惕(“成功”);
警报(数据保存状态);
},
“json”
);
});

实际上,这仍在清除浏览器文档并显示JSON请求。也许问题出在我的HTML中。
<script>
// ...
$('#ajaxFormSubmit').bind('click', function(event) {
  $.post(
    'data_entry_ajax',
    $('#data_entry_form').serialize(),
    function(data) {
      alert('Success');
      alert(data.save_status);
    },
    'json'
  );
});
</script>