【问题标题】:How to add a AJAX submit form inside a notification without reloading the page?如何在不重新加载页面的情况下在通知中添加 AJAX 提交表单?
【发布时间】:2015-05-14 12:46:04
【问题描述】:

我正在使用 jQuery 插件来通知 toastr js (http://codeseven.github.io/toastr/),我正在尝试在通知气球中添加一个联系表单,并在提交时使用 AJAX。 即使该表单在toastr.info('') 之外工作,我也无法在脚本中实现它。当我点击提交时,它会刷新页面。

我该如何解决这个问题?

Ajax 脚本

$(function(){
    $("#contactform").submit(function(event){
        event.preventDefault();
        $.post('mailme.php', $("#contactform").serialize(), function(data) {

        });
    });
});

HTML 表单

<form id="contactform" method="post" name="myform">
    <input name="phone" type="text"><input id="submit" name="Submit" type="submit" value="send">
</form>


toastr.info('I put the above HTML code in here')

小提琴

http://jsfiddle.net/e0k6e0vc/2

【问题讨论】:

    标签: javascript jquery html ajax toastr


    【解决方案1】:

    尝试解绑提交如下:

    $("#contactform").on('submit',function(event){
        event.preventDefault();
        $.post('mailme.php', $("#contactform").serialize(), function(data) {
    
        });
        $("#contactform").unbind('submit');
        return false;
    });
    

    更新

    好的.. 由于表单是动态添加的,它没有识别提交事件,因此下面的方法可以完成工作:

    DEMO HERE

    $(document).on('submit',"#contactform",function(event){
        event.preventDefault();
        $.post('mailme.php', $("#contactform").serialize(), function(data) {
    
        });
        $("#contactform").unbind('submit');
        return false;
    });
    

    【讨论】:

    • 你好,我试过了,没有运气。老实说,我把它放在这里,也许它更有帮助jsfiddle.net/e0k6e0vc
    • toastr 不会待太久!!能不能更新一下!!
    • fiddle 在这里用处不大!!
    • 我认为当文档中的 toastr.info 准备就绪时,它就可以工作了。但我不希望它出现在文档就绪功能中
    • 非常感谢!我怎样才能用 jsonp 发布这个(到另一个域)?
    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 2016-01-20
    • 2016-12-05
    • 1970-01-01
    • 2013-08-20
    • 1970-01-01
    • 2014-08-10
    相关资源
    最近更新 更多