2010-10-15 29 views
0

我在ASP.NET中使用jQuery Dialog。除了当我单击对话框中的确定按钮,并且如果发生错误,我希望在标签中显示错误时,我的工作状态正常。当对话结束事件被解雇时,已经太晚了。如果发生错误,我仍然如何显示对话框。出现错误时,我不想关闭对话框。当错误发生时,jquery对话框停止关闭?

//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方法。

+0

您可以添加代码,关闭对话框? – bendewey 2010-10-15 20:31:59

回答

0

问题是,您正在浏览器窗口上使用标准POST方法在窗体上上传文件 - 这将导致浏览器导航到新页面。

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

http://plupload.com/example_queuewidget.php