【问题标题】:How to submit a form through ajax in safari browser in grails如何在grails的safari浏览器中通过ajax提交表单
【发布时间】:2013-10-24 19:00:14
【问题描述】:

我正在尝试通过 ajax 函数同时按钮提交表单

但在 safari 浏览器上,它的提交就像普通的表单提交一样。

在其他浏览器中通过 ajax 功能正常工作

<g:form action="addEmpHistory" name="formNew" method="post">

 <button id="submitBtn" name="submitBtn" onclick="submitform(formNew);"></button>

</g:form>

//Ajax 代码

function submitform(data){  
    $("#"+data).submit(function(event) {    
        new Event(event).preventDefault();
        event.preventDefault();

        $.ajax({
            type: 'POST',
            url: '/user/addUSer',
            data: $('#'+data).serialize(),

            success: function (data) {
                location.reload();  
            }

        });
    });
}

【问题讨论】:

  • 请您发布您的submitform 功能。我会首先检查submitform 函数实际上是使用alert() 调用的,如果是,则调试submitform 函数。

标签: javascript ajax grails safari grails-2.0


【解决方案1】:

看到你在使用 jQuery,考虑移除 onclick

<form action="addEmpHistory" id="formNew" name="formNew" method="post">
    <button id="submitBtn" name="submitBtn">Submit</button>    
</form>

并用 jQuery 事件绑定替换您的 submitform 函数,例如:

$(document).ready(function() {
    $("#formNew").submit(function() {
        $.ajax({
            type: 'POST',
            url: '/user/addUSer',
            data: $("#formNew").serialize(),
            success: function(data) {
                alert(data);
            }
        });

        return false; // prevent actual form submit
    });
});

【讨论】:

    猜你喜欢
    • 2011-11-16
    • 1970-01-01
    • 2013-04-03
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    相关资源
    最近更新 更多