带有JQuery UI标签窗口小部件和四个标签的ASP.NET Web表单。 当我点击提交按钮时,我想禁用最新的三个标签。
谢谢!
P.S。 我知道如何在jquery中禁用选项卡
$( ".selector" ).tabs( { disabled: [1, 2] } );
我不知道如何在服务器端代码中执行此操作:)
答案 0 :(得分:2)
jQuery是客户端。你不能在服务器端禁用它。
您可以做的是在下一页加载(或AJAX调用)时从服务器将该位jQuery发送回页面。
答案 1 :(得分:0)
服务器端通常没有jQuery或JavaScript的概念,这些都是在客户端完成的。您可以做的一件事是,在按钮的服务器端单击事件处理程序中,添加一些JavaScript以发送到客户端以在页面加载时执行:
http://msdn.microsoft.com/en-us/library/3hc29e2a.aspx
我对此并没有做太多,但似乎很标准。另一种可能性是将标签包装在PlaceHolder控件中,并在事件处理程序中相应地将它们设置为visible = true / false。你可以非常顺利地动态地添加/删除围绕HTML和JavaScript的PlaceHolders。
答案 2 :(得分:0)
您可以从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
答案 3 :(得分:0)
这是一个Jquery UI技术,因此您无法在服务器端禁用它。但是,解决方法可以帮助您禁用在Page_load或任何其他功能上从服务器端注册启动脚本。
string str = "$(\"#tabs\").tabs({ disabled: [1, 2] });";
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "DisableTabs", str, true);