2012-07-17 61 views
0

我有AA href標記,並在javascript如何從asp.net頁面中移除thickbox背景畫面?

我的aspx代碼是這樣的

<a onclick="validate();" href="PopUpPage.aspx?KeepThis=true&TB_iframe=true&height=150&width=400" 
     class="thickbox" id="AnchorImage" > 
<img id="ColorImageButton" src="SiteImages.png" runat="server" /> 
</a> 

相似當鏈接點擊我需要驗證和刪除ThickBox的

我的javascript類似於一個validate方法像這樣

function validate() { 

if (document.getElementById('<%=ColorImageButton.ClientID%>').src.indexOf('Red.png') >= 0) { 
      document.getElementById('AnchorImage').removeAttribute('href'); 
      document.getElementById('AnchorImage').removeAttribute('class'); 
     } 
} 

而且我有兩個按鈕來更改錨標記中的圖像。基於使用按鈕設置的圖像我正在刪除thickbox類。也就是說,如果是Green.png我需要顯示thickbox.if Red.png的彈出窗口,我需要刪除或禁用ThickBox的或無動作不應該發生

<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> 
    <asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Button" /> 
protected void Button1_Click(object sender, EventArgs e) 
{ 
    ColorImageButton.Src = "~/SiteImages/Red.png"; 
} 
protected void Button2_Click(object sender, EventArgs e) 
{ 
    ColorImageButton.Src = "~/SiteImages/Green.png"; 
} 

驗證被稱爲在當用戶點擊如果條件滿足,則彈出窗口不顯示。但仍然出現thickbox的黑色透明屏幕,用戶需要點擊此處。我怎麼能解決這個問題?

+0

你想刪除class =「thickbox」驗證嗎? – SMK 2012-07-17 07:03:12

+0

@ShoaibMuhammadKhan是的相同,我認爲那只有thickbox的背景屏幕纔會消失。 – niknowj 2012-07-17 08:18:06

回答

0

看着thickbox.js的源代碼,它沒有提供取消的方法,所以嘗試手動調用它。

例如 從錨

<a onclick="validate(); return false;" href="#" id="AnchorImage"> 
    <img id="ColorImageButton" src="SiteImages.png" runat="server" /> 
</a> 

取出的ThickBox和HREF屬性在你的驗證函數調用tb_show展現ThickBox的,必要時

function validate() { 

    if (document.getElementById('<%=ColorImageButton.ClientID%>').src.indexOf('Red.png') >= 0) { 
     // Do nothing 
    } else { 
     //tb_show(caption, url, imageGroup) 
     tb_show(null, "PopUpPage.aspx?KeepThis=true&TB_iframe=true&height=150&width=400", false); 
    } 
} 
+0

我試過了。但厚底盒黑色背景屏幕仍然存在。 – niknowj 2012-07-18 06:08:01

+0

你可以發佈一個例子使用像http://jsfiddle.net/ – 2012-07-18 06:11:28

+0

@Chirs鯡魚,我更新了我的問題與我的真實場景 – niknowj 2012-07-18 06:32:02

0

如果你想刪除類=「ThickBox的」改變你的java腳本像下面

document.getElementById("AnchorImage").removeAttribute('class'); 

,或者如果你想改變屬性的代碼如下

其他

例如:對於文本

document.getElementById("txt").removeAttribute("readonly",0); 

(0,1)聲明屬性值true或false。

希望這可以幫助你

+0

通過此代碼我可以刪除thickbox屬性,但thickbox的黑色背景屏幕仍然存在。 – niknowj 2012-07-18 06:09:34

+0

你會在jsfiddle上發佈你的代碼嗎?這將有助於我們輕鬆索取 – 2012-07-18 06:18:56

+0

@Arum Kumar,我用我的真實場景更新了我的問題。 – niknowj 2012-07-18 06:32:52