Jquery隐藏/显示使用下拉选项不工作IE或CHROME

时间:2010-09-27 19:22:24

标签: jquery drop-down-menu html-table cross-browser show-hide

我有一个多重下拉菜单,用于隐藏/显示表格中的行。

示例:

 <select name="kp1_action" class="longboxsmall">
     <option class="hidenextrow" value="">Button Disabled</option>
    <option class="showtransferoptions" value="transfercall">Transfer Call + Log Keypress to Reports</option>
    <option  class="shownextrow" value="logkeypress">Log Keypress to Reports Only</option>
    <option  class="shownextrow" value="optout">Optout of Call List</option>
  </select>

我已经为每个不同的选项分配了类,所以我可以在点击它们时触发事件这是我的jQUERY。

        $(".shownextrow").click(function() { 
  $(this).closest("tr").next().show().find('.longboxsmall').hide();
});

                        $(".showtransferoptions").click(function() { 
  $(this).closest("tr").next().show().find('.longboxsmall').show();
});



                $(".hidenextrow").click(function() { 
  $(this).closest("tr").next().hide().find('.longboxsmall').hide();
});

一切都在Firefox中完美运行,但在IE或CHROME中却没有,为什么会这样?有没有更好的方法来做到这一点?

1 个答案:

答案 0 :(得分:0)

我会将“change”事件绑定到SELECT,然后在事件处理程序中,评估SELECT的值。

$("SELECT[name=kp1_action]").change(function()
{
    if(this.value == "transfercall") {
        ...
    }
    // OR
    if($(this).hasClass("shownextrow")) {
        ...
    }
});