发生错误时Jquery对话框停止关闭?

时间:2010-10-15 20:30:42

标签: javascript asp.net jquery jquery-ui jquery-dialog

我在ASP.NET中使用jQuery Dialog。我有它工作正常,除了当我单击对话框中的确定按钮,如果发生错误我想在标签中显示错误。当对话结束事件被触发时,为时已晚。如果发生错误,如何仍然显示对话框。我不想在出现错误时关闭对话框。

   //setup edit person dialog
     $('#uploadPic').dialog({
             autoOpen: false,
             modal: true,
             height: 375,
             width: 400,    
             draggable: true,
             title: "Upload Picture",
             open: function(type, data) {
                 $(this).parent().appendTo("form");
             }
         });
     }

    function showDialog(id) {
        $('#' + id).dialog("open");
    }

    function closeDialog(id) {
        $('#' + id).dialog("close");
    }

  <input type=button value="Change Image" onclick="javascript:showDialog('uploadPic')" />



<div id='uploadPic'>     
     <asp:FileUpload ID="InputFile"   runat="server" class="ms-fileinput" 
        size="35" />   
     <asp:Button Id="btnOK" runat="server"  Width="70px" Text="<%
    $Resources:wss,multipages_okbutton_text%>" OnClick="btnOK_Click" />
      <asp:Button Id="btnCancel" runat="server" Width="70px"
      CausesValidation="false" Text="Cancel" 
OnClientClick="javascript:closeDialog('uploadPic')" />
            </div>

在后面的代码中,我没有调用任何JQuery方法。

1 个答案:

答案 0 :(得分:0)

问题是您使用表单上的标准POST方法从浏览器窗口上传文件 - 这将导致浏览器导航到新页面。

您可以使用各种技术来允许浏览器上传文件,而不必强制进行页面导航。我建议您查看像Plupload这样的库来处理上传。看看他们的演示:

http://plupload.com/example_queuewidget.php