【问题标题】:ajaxForm is not running when used in jquery dialog在 jquery 对话框中使用时,ajaxForm 未运行
【发布时间】:2013-01-04 14:59:20
【问题描述】:

为什么 ajaxForm 没有在 jQuery Dialog 模式确认中运行,只要它包含在“删除项目”按钮中。

这是我的 jquery 对话框:

  <div id="deleteDialogForPartylist" title="Delete this item?">
      <form id="deleteDialogForPartylistForm" action="mEdit/editPartylist/storeDataToDb/deleteData.php">
        <p><span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span><span id="acronymOfTheParty" style="font-weight:bolder"></span> will be permanently deleted and cannot be recovered. Are you sure?</p>
        <input type="hidden" id="deleteDialogForPartylistHiddenId" name="deleteDialogForPartylistHiddenId">
      </form>
  </div>

这是我的脚本

$(function(){
$( "#deleteDialogForPartylist" ).dialog({
  autoOpen: false,
  resizable: false,
  height:225,
  hide: 'fade',
  modal: true,
  buttons: {
    Cancel: function() {
      $("#deleteDialogForPartylist").dialog('close');
    },
    "Delete item": function() {
      $('#deleteDialogForPartylistForm').ajaxForm({
            target: '#partyListInAddCandidate',
            type: "post",
            success: function(){
                alert("Success");
                $("#deleteDialogForPartylist").dialog('close');
            }
        });
    }
  }
});
});

【问题讨论】:

  • 您是否检查过 Firebug/IE 开发者工具/Chrome 开发者的 JavaScript 错误?
  • 我已经检查过了,但没有任何错误
  • AJAX 请求根本没有发生?还是只是 success 功能不起作用?
  • 你试过.ajaxSubmit()吗?有关差异的解释,请参阅插件文档
  • 是的,ajax 请求不起作用,我还在 beforeSubmit 中添加了 alert(),但不幸的是不起作用。

标签: php jquery html ajaxform


【解决方案1】:

.ajaxForm() 是否按照插件文档中的说明提交表单 (http://malsup.com/jquery/form/#api)

在您的情况下,您应该改用.ajaxSubmit(),它会立即在按钮单击时提交您的表单,正如charlietfl 的comment 已经建议的那样

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多