发布成功后执行jQuery代码

时间:2014-04-05 23:22:35

标签: javascript php jquery ajax twitter-bootstrap

我正在设计一个Web应用程序,它使用Twitter引导程序作为前端框架,使用Laravel作为后端框架。

我创建了一个存在于Twitter引导模式中的表单(请参阅http://getbootstrap.com/javascript/#modals),我试图利用AJAX提交表单数据而不离开页面。

现在,我的表单可以利用此代码执行此操作:

jQuery(function ($) {
   $('form[data-async]').on('submit', function (event) {
       var $form = $(this);
       var $target = $($form.attr('data-target'));

   $.ajax({
        type: $form.attr('method'),
        url: $form.attr('action'),
        data: $form.serialize(),

        success: function (data, status) {
            $target.html(data);
        },

        error: function () {
            alert("Please check your submission and try again.");
        }
    });

    event.preventDefault();
});
});

如果AJAX帖子成功,我试图关闭模态,但我似乎无法实现这一目标。我尝试使用:

$('#createTicket').modal('hide');

但是由于某种原因导致脚本离开页面。

如果有成功,有人会知道如何隐藏模式隐藏/切换吗?如果您需要更多代码,请与我们联系。

2 个答案:

答案 0 :(得分:1)

调用您传递到表单提交处理程序的preventDefault对象上的stopPropagationevent方法:

event.preventDefault();
event.stopPropagation();

答案 1 :(得分:0)

我真的需要看到你的HTML确定。尝试将此属性添加到表单标记。

<form onSubmit='return false;'>