asp.net中的模態對話方塊

來源:互聯網
上載者:User
終於開始寫B/S的程式。

今天遇到了一個問題, 如何處理模態對話方塊。具體的要求是:在選擇頁面上的“添加”按鈕,彈出模態對話方塊,在對話方塊中添加記錄後,選擇“確定”按鈕,關閉對話方塊,更新首頁面表格的資料。

網上關於模態對話方塊的討論有很多,試了一天,發現一個比較好的解決方案:

1、顯示對話方塊:

  在jscript指令檔中加入: 

   

function OpenEditWin(frmWin,width,height) 

  {       

   var me; 

   // 把父頁面視窗對象當作參數傳遞到對話方塊中,以便對話方塊操縱父頁自動重新整理。 

   me = window; 

   // 顯示對話方塊。 

   window.showModalDialog(frmWin,me,'dialogWidth='+width +'px;dialogHeight='+height+'px;help:no;status:no') 

  } 

  在C#中調用 :
cmdAdd.Attributes.Add("onclick","javascript:OpenEditWin('" + Session["showForm"] + "',540,400)"); 

很多方法是用 Response.Write或者RegisterStartupScript 來實現,但是都存在問題,如顯示對話方塊時頁面是空白、重新整理頁面的時候彈出對話方塊等。

在對話方塊中加入:

function onsubmit() // 強制本視窗提交 

  { 

   document.Form1.target="_self"; 

  } 

2、關閉對話方塊 

  

 Response.Write("<script language='javascript'>"); 

   Response.Write("window.close()"); 

   Response.Write("</script>"); 

3、對話方塊關閉後,執行更新操作

   在對話方塊的關閉事件中加入: 

 

Response.Write("<script language='javascript'>"); 

   Response.Write("window.close()"); 

   Response.Write("</script>"); 

4、更新首頁面中的表格式資料。

  在“添加”按鈕的處理方法中,添加表格更新的代碼。  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.