帶有JQuery UI選項卡窗口小部件和四個選項卡的ASP.NET Web窗體。 我想禁用最新的三個標籤,當我點擊一個提交按鈕。禁用jquery選項卡服務器端
謝謝!
P.S. 我知道如何在jQuery的
$(".selector").tabs({ disabled: [1, 2] });
禁用選項卡,我不知道該怎麼做,在服務器端代碼:)
帶有JQuery UI選項卡窗口小部件和四個選項卡的ASP.NET Web窗體。 我想禁用最新的三個標籤,當我點擊一個提交按鈕。禁用jquery選項卡服務器端
謝謝!
P.S. 我知道如何在jQuery的
$(".selector").tabs({ disabled: [1, 2] });
禁用選項卡,我不知道該怎麼做,在服務器端代碼:)
jQuery是客戶端。你不能禁用它的服務器端。
你可以做的是在下一頁加載(或AJAX調用)時將這一點的jQuery發送回服務器的頁面。
服務器端通常沒有jQuery或JavaScript的概念,這些都是在客戶端完成的。有一兩件事你可以做的是,在按鈕的服務器端Click事件處理程序,添加一些JavaScript發送到客戶端執行加載網頁時:
http://msdn.microsoft.com/en-us/library/3hc29e2a.aspx
我還沒有真正做了很多與那,但它似乎是非常標準的。另一種可能性是將選項卡封裝在PlaceHolder控件中,並在事件處理程序中相應地將它們設置爲visible = true/false。你可以非常順利地動態添加/刪除HTML和JavaScript的PlaceHolders。
您可以從CS代碼回發JavaScript。 所以在你click_submit_button方法使用以下命令:
int Tab_to_Disable = 3;
ClientScript.RegisterStartupScript(this.GetType(), "Script", "<script language=javascript>" +
"$('#container-1').tabs().tabs('disable', " + Tab_to_Disable + "); " +
"</script>");
希望這有助於:d
這是一個jQuery UI技術,所以你無法禁用它在服務器端。但是一種解決方法可以幫助您禁用,即在Page_load或其他任何函數上從服務器端註冊啓動腳本。
string str = "$(\"#tabs\").tabs({ disabled: [1, 2] });";
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "DisableTabs", str, true);
好的。那麼你的建議是什麼?使用OnClientClick處理程序調用客戶端腳本或註冊客戶端腳本以在下一頁加載時執行? – Lorenzo 2010-08-26 17:02:46
該頁面是否提交回傳?或者你正在做一個AJAX調用?答案就是你的答案。 – 2010-08-26 17:53:12