我的HTML与此类似:
<div class="MainForm">
<form name="FromName">
<button name="Button1"></button>
...
...
</form>
<Div class="blackBox" style="visibility:hidden;"></div>
<Div class="SubFotm" style="visibility:hidden;"></div>
</div>
现在我可以在我的脚本中正确找到按钮单击的触发器,但是我无法仅定位壁橱黑盒以使其可见。
目前我在做:
if (PButtonName=="Fermer") {
$(this).closest("div .ProfileForm").remove(); // Closing Profile Form
} else if (PButtonName=="plusAdresse") {
alert('In');
$(this).closest("div .BlackBox").css("visibility","visible");
}
我可以显示警告"In"
,但不能显示BlackBox
如果我改变了
$(this).closest("div .BlackBox").css("visibility","visible");
for:
$("div .FormBlackBox").css("visibility","visible");
它会显示,但也会显示文档中的所有黑盒子。
答案 0 :(得分:0)
而不是你做了什么,只需将样式display:none;
添加到你的div,然后随时显示它们。所以你可以这样做:
<div class="MainForm">
<form name="FromName">
<button name="Button1"></button>
...
...
</form>
<div class="blackBox" style="display:none;"></div>
<div class="SubFotm" style="display:none;"></div>
</div>
然后在你的脚本中
if (PButtonName=="Fermer")
{
$(".MainForm").closest("div .ProfileForm").remove(); // Closing Profile Form
}
else if (PButtonName=="plusAdresse")
{
alert('In');
$(".MainForm").closest("div .BlackBox").show();
}
我会建议你在这个地方使用Switch case
代替循环。
答案 1 :(得分:0)
如果您使用上述HTML或类似内容,我会使用对父母的引用来做。
而不是:
$(".MainForm").closest("div .BlackBox").css('visibility','visible');
使用
$(this).parents('.MainForm').children('.BlackBox').css('visibility','visible');
假设你有多个MainForm div,他们都有一个带有BlackBox类的孩子。