2011-03-11 41 views
7

我已經找到StackOverflow的答案和其他資源的說,你可以點擊一個隱藏的ASP:由我不能點擊一個ASP:按鈕,如果它隱藏使用jQuery?

$("#<%=HiddenButton.ClientID%>").click(); 

$("#<%=HiddenButton.ClientID%>").trigger("click"); 

但是按鈕使用jQuery,這些都不是爲我工作,除非該按鈕是可見= 「真」

下面是按鈕:

<asp:Button ID="loadCustomerContacts" runat="server" OnClick="loadCustomerContacts_Click" visible="false" />" 

回答

17

如果將Visible屬性設置爲false;通常在.net中,在處理頁面後,控件將不會呈現在HTML輸出中。因此,就jQuery而言,該按鈕不存在。

您可以在頁面上執行查看源代碼來驗證此操作。

如果你想這樣做,而是採用了Visible財產,你可以這樣做:

<asp:Button ID="myButton" runat="server" style="visibility: hidden; display: none;" /> 

或者你可以將其指定隱藏它一個CSS類。

0

這可能是因爲按鈕從來沒有被渲染到頁面標記中,儘管它存在於頁面對象的控制層次中。客戶端JS代碼依賴於現有的標記,並且與ASP頁面模型中可用的內容無關。

如果Visible = false不起作用,您是否嘗試添加類似「display = none;」的內容按鈕的樣式?如果按鈕在物理上位於頁面上,但隱藏您的Javascript方法可以工作。

2

您需要添加樣式=「顯示:無」的按鈕,而不是可見=假

2

編碼大猩猩是正確的,但是,你可以做的是設置Visible屬性代替,這增加了標記代替:

style="display:none;" 

這會隱藏CSS中的按鈕而不是渲染頁面。

1

當Visible爲false時,該按鈕不會在瀏覽器中呈現。如果它不在瀏覽器中,則無法點擊。而不是使用Visible屬性使用CssClass來隱藏它。創建一個類像在樣式表

.Hidden { 
    display:none; 
} 

然後用

loadCustomerContacts.CssClass = "Hidden" 
相關問題