0

我正在使用服务器端表单验证向使用 Ajax 提交的表单发布响应(以 html 格式),但更具体地说是使用http://jquery.malsup.com/form/#getting-started插件。

我努力了:

<script type="text/javascript">
$(document).ready(function() {
 var $dialog = $('<div id="dialog"></div>')
        .html('This dialog will show every time!')
        .dialog({
            autoOpen: false,
            title: 'Basic Dialog'
        });
    $('#bookingForm').ajaxForm({
        success: function() { 
            $dialog.dialog('open');
            // prevent the default action, e.g., following a link
            return false;
        } 
    });
});
</script>

Ajax 提交触发,服务器返回响应但没有 jquery 对话框。

移除

autoOpen: false,

显示对话框,所以我知道这部分脚本正在运行。

我还用警报测试了回调,它也在工作。

感谢您的帮助。

蒂姆

4

1 回答 1

0

这是关于范围的吗?$dialog 不可用,因为它在函数内部

尝试

 var $dialog;
  $(document).ready(function() {
      $dialog = $('<div id="dialog"></div>')
于 2012-06-18T15:54:04.743 回答