表单提交在iPad上无法正常工作

时间:2013-02-27 12:53:24

标签: jquery forms ipad

我有一张表格:

  <form id="pay_form"  action='@ConfigurationManager.AppSettings["LogonUrl"]' method="POST">
                <input type="hidden" name="Signed" value="">
                <input type="hidden" name="email" size="50" maxlength="50" value="">
                <input type="hidden" name="Language" value="en">
                <input id="pay_confirm_order" type="button" class="btn btn-large btn-primary pull-right" value="Submit"/>
     </form>

这是处理表单提交的js代码:

 $(document).on('click', '#pay_confirm_order', function () {
        fillEpayForm();
    });

当用户点击Sumbit按钮时,我会发出ajax请求:

function fillEpayForm() {
        var url = getCultureUrl('/pay/FillEpayForm?' + Math.random());

        $.ajax({
            type: "GET",
            url: url,
            cache: false,
            dataType: "json",
            success: function (data) {
                $('#pay_form').find('input[name="Signed"]').val(data.signedString);
                $('#pay_form').find('input[name="email"]').val(data.email);
                $('#pay_form').submit();
            },
            async: false
        });
    }

action属性包含外部URL(这是接收帖子请求的银行服务)。 提交表单时,打开银行的网站。一切正常在桌面浏览器和android上运行。但在iPad3上,地址栏已更改,但页面未更改。怎么解决这个?这只是iOS6上的问题,在5.1版本上一切正常。

2 个答案:

答案 0 :(得分:1)

试试这个:

function fillEpayForm() {
    var url = getCultureUrl('/pay/FillEpayForm?' + Math.random());

    $.ajax({
        type: "GET",
        url: url,
        cache: false,
        dataType: "json",
        success: function (data) {
            $('#pay_form').find('input[name="Signed"]').val(data.signedString);
            $('#pay_form').find('input[name="email"]').val(data.email);
            $('#pay_form').submit();
        },
        async: false
    });
    return false;
}
$(document).on('click', '#pay_confirm_order', function () {
    return fillEpayForm();
});

答案 1 :(得分:0)

我对ipad有一些严重的问题,因为它缓存了洞视图。我使用

解决了我的问题
[OutputCache(Location = System.Web.UI.OutputCacheLocation.None, NoStore = true, Duration = 0, VaryByParam = "*")]

作为我的基本控制器的属性,它可以帮助你。