jquery设置dotnet表单visible=true和false
我有一个选项卡式登录页面,我想在每个选项卡上托管一个表单,但从后面的代码来看,它们位于单个页面上。
这意味着有两种形式。
示例:
<nav id="secondary">
<ul>
<li id="current"><a href="#login">Login</a></li>
<li><a href="#forgot">Forgot Password</a></li>
</ul>
</nav>
<div id="login" class="tab">
<br /><br />
<form runat="server" visible="true" class="frmControl">
</form>
</div>
<div id="forgot" class="tab">
<br /><br />
<form runat="server" visible="false" class="frmControl"></form>
</div>
然后我有以下 jquery 在登录 div 和忘记 div 之间切换
$(".tab").hide();
if ($("nav#secondary ul li.current").length < 1) {
$("nav#secondary ul li:first-child").addClass("current");
}
var link = $("nav#secondary ul li.current a").attr("href");
$(link).show();
$("nav#secondary ul li a").click(function () {
if (!$(this).hasClass("current")) {
$("nav#secondary ul li").removeClass("current");
$(this).parent().addClass("current");
$(".tab").hide();
$(".frmControl").attr("Visible", "false");
var link = $(this).attr("href");
$(this).attr("Visible", "true");
$(link).show();
initBackground();
}
return false;
});
它无法正常工作,因为它只是将 '.frmControl' 类设置为visible=false。但是当我重新激活该选项卡时,它不会再次将活动选项卡表单设置为 true 并将非活动选项卡表单设置为 false。
抱歉,如果我没有正确解释这一点。
-RD
I have a tabbed login page, that I would like to host a single form on each tab, but from the code behind they are on a single page.
This means there are two forms.
example:
<nav id="secondary">
<ul>
<li id="current"><a href="#login">Login</a></li>
<li><a href="#forgot">Forgot Password</a></li>
</ul>
</nav>
<div id="login" class="tab">
<br /><br />
<form runat="server" visible="true" class="frmControl">
</form>
</div>
<div id="forgot" class="tab">
<br /><br />
<form runat="server" visible="false" class="frmControl"></form>
</div>
and then I have the following jquery to toggle between the login div and forgot div
$(".tab").hide();
if ($("nav#secondary ul li.current").length < 1) {
$("nav#secondary ul li:first-child").addClass("current");
}
var link = $("nav#secondary ul li.current a").attr("href");
$(link).show();
$("nav#secondary ul li a").click(function () {
if (!$(this).hasClass("current")) {
$("nav#secondary ul li").removeClass("current");
$(this).parent().addClass("current");
$(".tab").hide();
$(".frmControl").attr("Visible", "false");
var link = $(this).attr("href");
$(this).attr("Visible", "true");
$(link).show();
initBackground();
}
return false;
});
It is not working correctly, as it is only setting the '.frmControl' class to visible=false. but when i reactivate the tab, it does not set this to true again for the active tab form and set the inactive tab form to false.
sorry if I am not explaining this correctly.
-RD
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不想设置
$(".frmControl").attr("Visible", "false");
因为您已经使用$(".tab") 隐藏了该选项卡。 hide();
这是工作示例 http://jsfiddle.net/VGRZS/
you do not want to set
$(".frmControl").attr("Visible", "false");
because you already hiding the tab using$(".tab").hide();
Here is working example http://jsfiddle.net/VGRZS/