2011-09-12 103 views
3

我有一個帶網格的asp.net頁面。在some.aspx頁RowDateBound事件ASP.NET子窗口在每個回發的新窗口上打開

mybutton.Attributes.Add("onclick", "javascript:window.showModalDialog('some.aspx?ID=" 
                    + mybutton.CommandArgument + 
                    "','window.self','dialogWidth:800px; dialogHeight:800px;center:yes; status:yes; scroll:no; help:no');"); 

我有下拉列表和asp.net按鈕,它一回發postback.On的some.aspx頁面再次打開一個新的窗口(瀏覽器)。

如何預防?

我很感謝您的支持。

+1

該按鈕是否有一個服務器端組件?這聽起來好像是在客戶端打開一個彈出窗口。如果是這樣的話,把它作爲一個常規的按鈕,而不是一個ASP.NET服務器控件,它甚至不會嘗試首先回發。 – David

回答

7

我以前有過ASP.NET和ModalDialog這個問題。你需要做的是將<base target="_self">標籤設置在頁面的頭部。這聽起來太簡單了,但它是爲我修正的。

這讓我很沮喪。

如果您需要任何幫助,請詢問。

<html> 
<head> 
    <title>My Page</title> 
    <base target="_self"> 
</head> 
<body> 
<!-- Your content --> 
</body> 
</html> 
+0

謝謝! showModalDialog有這個問題。你的建議使它工作。 – kalls

+0

樂於助人。 – Kirk

+0

@Krik我正面臨類似的問題,我的所有鏈接都在新窗口中打開。我嘗試了你的建議,但仍然沒有運氣。這裏是我的帖子的鏈接http://stackoverflow.com/questions/16254677/why-all-my-links-opening-in-a-new-window – Deb

2

您可以在鏈接/按鈕後面放置一個return false;以停止發佈帖子。

+0

網格位於父頁面上。子窗口(some.aspx)應該有回發(下拉和按鈕)正確發生。返回false;沒有幫助。我很欣賞你的建議。 – kalls

+0

我想我不明白你的問題,你可以在你的文章中提供更多的細節。 – JonH

+0

'some.aspx'上的控件是否更新父對象?父頁面是否被'some.aspx'中的控件刷新? –