Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 将控件设置为";主动的;在屏幕上单击?_Asp.net_Master Pages - Fatal编程技术网

Asp.net 将控件设置为";主动的;在屏幕上单击?

Asp.net 将控件设置为";主动的;在屏幕上单击?,asp.net,master-pages,Asp.net,Master Pages,我有一个包含div“navcontainer”的母版页,当您单击导航按钮时,它会将您重定向到另一个页面。现在当它转到另一页时,我有一个 Master.FindControl("Dashboard").ID = "active"; Master.FindControl(“仪表板”).ID=“活动”; 我想知道是否有一种方法可以在asp端单击navcontainer而不是在代码隐藏的FindControl()上设置ID=“active” 这是我的密码: <div id="na

我有一个包含div“navcontainer”的母版页,当您单击导航按钮时,它会将您重定向到另一个页面。现在当它转到另一页时,我有一个 Master.FindControl("Dashboard").ID = "active"; Master.FindControl(“仪表板”).ID=“活动”; 我想知道是否有一种方法可以在asp端单击navcontainer而不是在代码隐藏的FindControl()上设置ID=“active”

这是我的密码:

         <div id="navcontainer" 
            style="border-style: outset; border-width: thin; background-color: #663300; height: 30px; ">                
            <ul id="navlist" runat="server">
                <li runat ="server" id="Home" >
                    <a href='<%= ResolveUrl("~/Default.aspx") %>' title="Home"> <span>Home</span></a></li>
            <%
                if (_ApplicationAccess("Dashboard")) {
                %>
                <li runat ="server" id="Dashboard">
                    <a href='<%= ResolveUrl("~/Dashboard/Default.aspx") %>' title="Dashboard"><span>Dashboard</span></a></li> 
                <%
                }
            %>
            </ul>
          </div>

谢谢你的帮助

已更新

每当单击导航按钮时,.css文件就会更改按钮的颜色。在my.css文件中,控件的ID='Active',它会更改导航控件的颜色。当前我设置ID='active'的方式是,单击导航控件并将其加载到.cs文件下的重定向页面时,我有一个Master.FindControl(“Dashboard”).ID=“active”来更改选项卡的颜色。我正在尝试查看,当单击按钮以更改颜色时,是否有办法在母版页侧执行此操作,而不是在子页上执行此操作,例如:

Master.FindControl("Dashboard").ID = "active";
        <li runat ="server" id="Diabetes">
            <a id="current" href='<%= ResolveUrl("~/Home/Home.aspx") %>' **onClick = "ID=active"** title="Diabetes"><span>Diabetes</span></a></li>  

  • 很难说出你在问什么,但是(如果我理解正确的话)你可以使用jQuery找到你的控件,然后修改它的ID。把它放在你的ASPX页面上(“Dashboard”的标记所在的页面,不管是主控还是子控):

    
    $(函数(){
    $(“#”)attr(“ID”,“active”);
    });
    
    很难说出你在问什么,但是(如果我理解正确的话)你可以使用jQuery找到你的控件,然后修改它的ID。把它放在你的ASPX页面上(“Dashboard”的标记所在的页面,不管是主控还是子控):

    
    $(函数(){
    $(“#”)attr(“ID”,“active”);
    });
    
    我不知道你想要什么,所以我写下评论。您可以使用jQuery或类似的工具吗?只需附加到document.ready并设置属性值(使用ClientID属性获取ASP.NET分配的控件的“true”ID)。您的问题有点不清楚。在客户端控制单击行为的唯一方法是使用JavaScript,但为了获得更多帮助,您必须更具体地说明您正试图实现的目标。@Adriano,检查更新的我希望它有意义。@DeviceSeev,检查更新的我希望它有意义。好的,我重复一遍:只需附加到document.ready并设置属性值(使用ClientID属性获取ASP.NET分配的控件的“true”ID)。为什么是ID而不是类?不知道你想要什么,所以我写评论。您可以使用jQuery或类似的工具吗?只需附加到document.ready并设置属性值(使用ClientID属性获取ASP.NET分配的控件的“true”ID)。您的问题有点不清楚。在客户端控制单击行为的唯一方法是使用JavaScript,但为了获得更多帮助,您必须更具体地说明您正试图实现的目标。@Adriano,检查更新的我希望它有意义。@DeviceSeev,检查更新的我希望它有意义。好的,我重复一遍:只需附加到document.ready并设置属性值(使用ClientID属性获取ASP.NET分配的控件的“true”ID)。为什么是ID而不是类?我是将其放入MasterPage.aspx还是实际的子页面?我对jQuery做得不多。@Nick我已经更新了答案。您希望将javascript放在“Dashboard”元素的标记所在的页面上。另外,我添加了脚本导入行,因为您说您没有使用jQuery。您必须从某处导入jQuery库(在我的示例中,它位于
    /Scripts
    文件夹中)。。。但当我这样做时,按钮总是处于活动状态?我只希望它在导航到仪表板页面后处于活动状态并保持活动状态。@Nick Correct。我省略了何时/是否设置的逻辑。如果只是基于“仪表板”页面,你能检查一下URL吗?前两个答案很好地解释了这一点。如果($(location.attr('href')==“你在这里的URL”),你可以做
    if
    Awesome。谢谢你的帮助。。。我学到了很多。。。我也开始研究JQuery,很酷的东西。我应该把它放到MasterPage.aspx还是真正的子页面?我对jQuery做得不多。@Nick我已经更新了答案。您希望将javascript放在“Dashboard”元素的标记所在的页面上。另外,我添加了脚本导入行,因为您说您没有使用jQuery。您必须从某处导入jQuery库(在我的示例中,它位于
    /Scripts
    文件夹中)。。。但当我这样做时,按钮总是处于活动状态?我只希望它在导航到仪表板页面后处于活动状态并保持活动状态。@Nick Correct。我省略了何时/是否设置的逻辑。如果只是基于“仪表板”页面,你能检查一下URL吗?前两个答案很好地解释了这一点。如果($(location.attr('href')==“你在这里的URL”),你可以做
    if
    Awesome。谢谢你的帮助。。。我学到了很多。。。还开始研究JQuery,很酷的东西。