我对 jQuery 比较陌生,需要一些帮助来解决我遇到的问题。当有人从下拉选择列表中选择一个选项时,我编写了这个脚本来显示一个数量框。客户在我拥有的下拉列表旁边请求了一个“重置选择”链接。问题是,如果有人做出选择,但随后改变主意并选择了不同的选项,则再次触发 slideToggle,然后隐藏数量框并添加到购物车按钮。有没有办法让这个功能只有在单击第一个“选择选项”选项或“重置”链接时才会关闭滑动切换,而不是任何其他选项。
希望这是有道理的。
<script language="javascript">
jQuery.noConflict();
<!--
// prepare the form when the DOM is ready
jQuery(document).ready(function() {
jQuery(".expcontent").hide();
jQuery(".reset").hide();
jQuery(".back").change(function(){
jQuery(".expcontent").slideToggle(800);
jQuery(".reset").show();
});
jQuery(".reset").click(function(){
jQuery(".reset").hide();
jQuery(".expcontent").slideToggle(800);
jQuery('.back option:selected').removeAttr('selected');
});
});
</script>
根据下面给出的回复,我尝试过:
jQuery(".back").change(function(){
var sel=jQuery('.back option:first')
if (sel)
jQuery(".expcontent").slideUp(800);
else
jQuery(".expcontent").slideDown(800);
但是 slideDown 从来没有使用这个,所以我假设 var sel 的条件没有得到满足。它甚至是一个有效的条件吗?我正在努力寻找有关如何判断“选择”下拉菜单中的第一个选项是否已被选择的大量信息。
解决了。更换
var sel=jQuery(".back option:first")
和
var sel=jQuery(".back option:first").attr('selected')