jQuery POST不使用IE 11提交表单值

前端之家收集整理的这篇文章主要介绍了jQuery POST不使用IE 11提交表单值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经尝试了几个小时找到这个问题的解决方案,但以下代码根本不适用于Internet Explorer 11.它适用于Chrome和Firefox.使用IE11时,提交帖子但提交的表格为空.
<!DOCTYPE html>
    <html>
        <head>
            <Meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
            <script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
        </head>
        <body>
            <form action="/Mandate/Edit" id="mandateForm" method="post">            
                <input id="ExternalId" name="ExternalId" type="hidden" value="" />
                <input id="mandateName" name="mandateName" type="text" />
                <a href="#" id="md-submit">Create</a>
            </form>
            <script type="text/javascript">
                $(function () {
                    $("#md-submit").on("click",function (e) {
                        e.preventDefault();
                        var form = $("#mandateForm");
                        var request = $.ajax({
                            type: "POST",url: form.attr("action"),data: {
                                mandateName: "test4711"
                            },dataType: 'json',cache: false
                        });
                    });
                });
            </script>
        </body>
    </html>

非常感谢您的帮助.

解决方法

在jquery中,表格序列化存在一些问题.我通常使用这个插件http://jquery.malsup.com/form/#api

这似乎是解决问题的最简单方法.但它远非最干净的方式.您可以尝试的另一件事是:让服务器监听json requestdata.并将其序列化为json字符串.或者自己制作序列化功能.这就像3行代码.

猜你在找的jQuery相关文章