编辑2:可能最好看到正在运行的页面 - http://www.justdoors.co/product-selection - 基本上我需要它,所以如果有人在第一个选择框中选择了某些内容,那么他们会点击下一步它会打开另一个下拉列表,如果有人返回并更改了第一个下拉列表中的选项,我需要第二个位重置并隐藏,直到他们点击下一个相关选项。
您好 [选择框]
如果用户选择<option 1>
,则会显示带有信息的选项1 div ,并显示 DIV A 的链接
如果用户选择<option 2>
,则会显示带有信息的选项2 div ,并显示 DIV B 的链接
如果用户选择<option 3>
,则会显示选项3 div ,其中包含信息和链接以显示 DIV C
如果用户点击链接以显示 DIV A ,则会显示第二个具有类似选项的选择框。
如果用户点击显示 DIV A ,然后从下拉框 DIV A 中改变了对第一个选项的想法,我需要它重置并隐藏 DIV A ,以便当他们点击该选项中的链接时,它会显示新的选择。
写另一种方式:
用户选择<option 1>
点击链接指向 DIV A &gt;&gt; DIV A 会显示,但随后用户会改变主意并选择<option 2>
&gt;&gt; DIV A 需要隐藏&gt;&gt;然后,用户可以点击链接以显示 DIV B 。
这是我正在使用的脚本,显示了DIV A / B / C:
$(document).ready(function() {
$('#divA-holder').hide();
$('#divA-link').click(function() {
$('#divA-holder').toggle(400);
return false;
});
$('#divB-holder').hide();
$('#divB-link').click(function() {
$('#divB-holder').toggle(400);
return false;
});
$('#divC-holder').hide();
$('#divC-link').click(function() {
$('#divC-holder').toggle(400);
return false;
});
});
同时:
jQuery("#selector1").change(function(){
if (jQuery(this).val() == "1" ) {
jQuery("#option1div").slideDown("fast");
} else {
jQuery("#option1div").slideUp("fast");
}
});
在开头使用选项信息显示/隐藏DIV。
我可能过于复杂,所以任何指针都会很棒!
编辑:我想在考虑它的时候我需要在selector1函数中使用某些内容来确保隐藏所有其他div之后,任何关于我如何做到这一点的指针都会受到赞赏。
答案 0 :(得分:1)
玩这个并让我知道这是否是您正在寻找的: http://jsfiddle.net/bozdoz/RpakG/
我唯一真正做的是将toggle()更改为hide()all并根据选项值的值显示()特定div。所以,我希望能解决你的问题:在更改时,隐藏每个div,显示由选项值指定的div。因为处理程序正在更改,所以如果用户选择相同的div,它将不会无意中隐藏所需的div。它只会隐藏其他div。