首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在asp.net母版页中使用Css类使jquery选项卡可见和不可见时出现问题

在asp.net母版页中使用Css类使jquery选项卡可见和不可见时出现问题
EN

Stack Overflow用户
提问于 2010-04-14 16:34:39
回答 2查看 1.2K关注 0票数 0

我在asp.net母版页上设置了一组jquery选项卡,如下所示。

代码语言:javascript
复制
<ul>            
                    <li <%= Session["CurrentTab"] == "Firsttab" ? "class=\"current\"" : "" %>><a href="First.aspx">First</a></li>
                    <li <%= Session["CurrentTab"] == "Secondtab" ? "class=\"current\"" : "" %>><a href="Second.aspx">Second</a></li>
                    <li <%= Session["CurrentTab"] == "Thirdtab" ? "class=\"current\"" : "" %>><a href="Third.aspx">Third</a></li>
                    <li <%= Session["CurrentTab"] == "Fourthtab" ? "class=\"current\"" : "" %>><a href="Fourth.aspx">Fourth</a></li>
                    <li id="bsearch" style="margin-left:500px" class=<%= Session["CurrentTab"] == "Fifthtab" ? "current" : "hide" %>><a href="Fifth.aspx">Fifth <asp:Literal ID="Lblcount" runat="server" Visible="false"></asp:Literal><span id="removebtn" class="removetab ui-icon ui-icon-circle-close" style="float:right; margin: -2px -10px 0px 3px; cursor:pointer;"></span></a></li>

                </ul>

这些选项卡在jquery ajax模式下工作。我正在将First.aspx,Second.aspx,Third.aspx,Fourth.aspx,Fifth.aspx页面的页面加载中的会话“CurrentTab”值设置为该值上相应的values.Based。当单击特定的page.the时,相应的选项卡将突出显示,默认情况下前4个选项卡(第一,第二,第三,第四个)将可见,而第五个选项卡是不可见的。

我在母版页上有一个搜索按钮,从任何页面点击它都会将用户重定向到Fifth.aspx,在那里我也使第五个选项卡可见。

在单击选项卡标题旁边出现的'x‘时,这第五个选项卡应该是可关闭的。

一旦这个第五个标签是可见的,除非用户点击'x‘,它应该与所有页面(First.aspx,Second.aspx,Third.aspx,Fourth.aspx,fifth.aspx )上的其他标签一起保持可见,当前如果我离开fifth.aspx页面并导航到其他页面,’第五‘标签将变得不可见,因为会话“CurrentTab”不再设置为"Fifthtab“,并且该标签根据class=<%= Session["CurrentTab"] == "Fifthtab" ? "current" : "hide" %>被隐藏我正在为该标签编写的会话。

我想用下面这样的东西替换这个类

代码语言:javascript
复制
 class=<%= Session["CurrentTab"] == "Fifthtab" ? "current" : "default" %>

其中'default‘对应于style="display:block";

我试着用javascript在母版页的搜索按钮上点击,但它不起作用。

有没有人能帮我实现这个目标?

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2010-04-14 17:16:54

一种解决方法是使用隐藏字段来保存第五页签的状态。因此,只要第五个选项卡可见,就设置隐藏变量。类似地,当用户单击x按钮时,设置变量。

可以访问名为'hdnFifthTabStatus‘的隐藏变量,如下所示

代码语言:javascript
复制
$('input[id$="hdnFifthTabStatus"]').val();  

现在,如果这是真的: add display:block to none tab css,否则add display:none。

票数 0
EN

Stack Overflow用户

发布于 2018-07-03 20:08:28

这显然是非常晚的,但这是我最近使用的一个简单的技巧。

因此,您只需使用CSS显示属性即可实现隐藏选项卡。

代码语言:javascript
复制
display: none;

在list元素中使用内联样式就足够了。

代码语言:javascript
复制
<li style="display:none;"><a href="SomeTargetView">Example</a></li>

现在,让我们定义将链接到JavaScript函数的搜索按钮。此功能反过来将激活您的选项卡。

以下是搜索按钮的代码:

代码语言:javascript
复制
<a href="javascript:;" onclick="tabActivator()" class="some button classes">Edit my profile</a>

现在,为了实现对特定选项卡的点击激活,我们可以编写一些JavaScript函数。

代码语言:javascript
复制
function tabActivator(){
    $("#tabs").tabs("option", "active", 4);
    return false;
}

在这里,我们激活了从0开始计数的第5个标签,因此是4。

因此,对于您的特定情况,我猜Button和JS函数是提供的,但列表将如下所示:

代码语言:javascript
复制
<ul>
    <li <%= Session["CurrentTab"] == "Firsttab" ? "class=\"current\"" : "" %>><a href="First.aspx">First</a></li>
    <li <%= Session["CurrentTab"] == "Secondtab" ? "class=\"current\"" : "" %>><a href="Second.aspx">Second</a></li>
    <li <%= Session["CurrentTab"] == "Thirdtab" ? "class=\"current\"" : "" %>><a href="Third.aspx">Third</a></li>
    <li <%= Session["CurrentTab"] == "Fourthtab" ? "class=\"current\"" : "" %>><a href="Fourth.aspx">Fourth</a></li>
    <li style="display:none;"<%= Session["CurrentTab"] == "Fifthtab" ? "class=\"current\"" : "" %>><a href="Fifth.aspx">Fifth</a></li>
</ul>

隐藏和显示搜索框的代码可以在上面提供的相同函数中使用一些JavaScript来完成。

也许你真的不再需要这个答案了,但是任何想要在标签中激活隐藏标签的人都可以这样做。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2635924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档