[英]How can I create a pop-up window using a new page as the pop-up source?
我想在單擊“創建按鈕”時彈出一個面板,我正在使用一個面板,並在面板內部添加了一些文本框和按鈕。 我可以通過在與創建按鈕相同的頁面中進行設計來制作彈出面板。 我可以在單獨的頁面中彈出窗口嗎,當我單擊createbutton時使其彈出嗎
當然。 您可以創建一個iframe,然后將源設置為要創建的面板。
假設您有兩個html頁面panel.html和main.html
您的panel.html可以簡單地是
<html>
<body style="background-color:red">
Hi!
</body>
</html>
和你的main.html
<html>
<body style="background-color:yellow">
<iframe src="panel.html" style="height:300px;width:300px;border:0px;display:none;" id="myPanel"></iframe>
<a href="#" onclick="document.getElementById('myPanel').style.display='block';return false">Show Panel</a>
</body>
</html>
這應該顯示一個帶有超鏈接“顯示面板”的黃頁。 單擊“顯示面板”時,它將顯示panel.html的iframe。
如果使用的是ASP.NET MVC,則可以通過創建一個可以用一些Ajax / JQuery代碼調用的View來實現。 如果您正在尋找某種方法,我可以為此發布一些代碼。
Gokul,
是的,您可以將面板放在單獨的頁面中,並在單擊“創建”按鈕時顯示它。 這是一種選擇(不是我的最愛,但除了標准javascript之外,它不依賴任何其他東西):
當您單擊“創建按鈕”時,將打開一個新的瀏覽器窗口,該窗口的大小將與面板的大小完全匹配。 可以使用javascript輕松完成,如下所示:
<輸入onclick =“ javascript:window.open('page.aspx','title','status = 0,toolbar = 0,width = 350,height = 250');” type =“ button” value =“ Create” />
在彈出的包含面板的頁面上(根據我的示例,頁面包含Panel.aspx),執行一些操作后,您就可以使用代碼關閉窗口。 例如,如果您有一個應該將一些數據保存到數據庫並返回到父頁面的按鈕,則可以執行以下操作:
{
///Perform server side process. If successfully executed close this window.
protected void btnSubmit_Click(object sender, EventArgs e)
if(EverythingOK)
{
StringBuilder cstext2 = new StringBuilder();
cstext2.Append("<script type=\"text/javascript\"> function CloseMe() {");
cstext2.Append("window.close();} </");
cstext2.Append("script>");
cs.RegisterStartupScript(cstype, csname2, cstext2.ToString(), false);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.