序列化表单getjson不起作用

Posted

技术标签:

【中文标题】序列化表单getjson不起作用【英文标题】:serialize form getjson not working 【发布时间】:2015-04-17 15:19:03 【问题描述】:

我想获取序列化的表单值并使用 getJson 将其通过 url 传递。它工作得很好,但它以某种方式停止工作。它仍然适用于 IE,但不再适用于 FF。这是代码。

$(function() 
    $('#gui-form').on('submit', function(e) 
        var data = $("#gui-form :input").serialize();
        $.getJSON("https://test.com/process.php",data)
                  );
);

在 process.php 中我将 $_GET 值。

【问题讨论】:

$("#gui-form :input").serialize() 替换为$("#gui-form").serialize() 【参考方案1】:

由于您在表单上使用submit 方法,您可以在jQuery 上使用$(this) 选择器来序列化当前表单的输入(假设您的所有html 输入都正确设置了name 属性)。尝试这样做:

$(function() 
        $('#gui-form').on('submit', function(e) 
            e.preventDefault();
            var data = $(this).serialize();
            $.getJSON("https://test.com/process.php", data, function(result)
                console.log(result);
            ));
        );
    );

【讨论】:

我在 Firefox 中收到跨域请求被阻止错误。有没有解决方法。像httprequest这样的东西?我不熟悉那个 eek.. 好的 ol Cross Origin 错误。有一种解决方法,请稍等。 看看我过去给某人的这个答案:***.com/questions/28461850/…

以上是关于序列化表单getjson不起作用的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript表单序列化不起作用

表单序列化在 Safari 中不起作用?

带有.NET MVC的jQuery getJSON不起作用

$.getJSON 请求在按钮单击时不起作用

JQuery $.getJSON 加载本地 JSON 文件不起作用

Jquery getJSON 在 Chrome 中不起作用