我正在尝试从.net codebehind执行触发器。 通常发生的是,您单击突出显示选项卡的选项卡,然后执行一些javascript以使某些div可见。
目前,我编写的代码将突出显示该选项卡,但div不可见。
if (Request.QueryString["ID"] == "56")
{
ltrClassName.Text = "active";
StringBuilder jscript = new StringBuilder();
jscript.Append("<script type=\"text/javascript\">$(document).ready(function PremiumServicesClick() {");
jscript.Append("$('#PremiumServicesTab').trigger('click');");
jscript.Append("})");
jscript.Append("</script>");
}
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "0", "PremiumServicesClick()", true);
我在Page_Load事件中运行此代码。
答案 0 :(得分:0)
您应该在javascript中处理该点击事件客户端,而不是服务器端。 如果你真的必须做回发,你可以在.aspx文件中放入一些代码,该文件根据需要为html元素设置所需的属性。
如果您的标签和/或div属于服务器端控件,那么您肯定可以相应地编辑这些控件的属性。
编辑(请求的示例):
<div style="height:100px; width:100px; <%=Page.IsPostBack ? "background-color: red;" : "" %>">
</div>
只有当页面加载是由回发引起时,上面的代码才会将div颜色变为红色。当然,您可以将条件替换为适合您的任何内容以及您添加/替换的属性。这样,你的html就会受到服务器端变量的限制(无论你想要什么,你想要的)。