0

我在使用所选插件的选择框上执行操作时遇到问题。使用所选选择框的输入来操作标准 HTML 选择框时似乎很好,但是当我将"chzn-select"类添加到该选择框时,脚本会失败。

这是代码。

HTML:

<form>
    <select id="sel1" name="sel1" class="chzn-select">
        <option value="1">1</option>
        <option value="2">Computer</option>
        <option value="3">3</option>
    </select>

    <div id="select2" style="display:none">
        <select id="sel2" name="sel2" selected="selected" class="chzn-select">Select
           <option value=""></option>
           <option value="1">1</option>
           <option value="2">2</option>
           <option value="3">3</option>
         </select>
    </div>
</form>

的JavaScript:

$(function () {
    var selCategory = $('#sel1');
    selCategory.change(function () {
        selCategory.find('option:selected').each(function () {
            if ($(this).text() ==='Computer') {
                $('#select2').show();
            }
        else{
            $('#select2').hide();
        }
        });
    });
});

$('#sel1').on('change', function () {
     $('#sel2').prop('selectedIndex',0);
});

任何关于我哪里出错的迹象都将不胜感激!

编辑 2013 年 11 月 11 日

我有一些时间来解决这个问题,因为我收到的关于这个问题的所有答案似乎对于常规选择框都是正确的,但对于所选插件则不然。这需要单独更新。解决方法是添加$('#sel2').val('').trigger('chosen:updated');将所选选择框重置为其原始状态的选项。我在这里找到了代码How do I reset a jquery-chosen select option with jQuery?

感谢您给我的所有帮助,并希望此编辑可以帮助任何像我一样困惑的人。

4

2 回答 2

2

您需要更改选项上的“已选择”属性,而不是选择标签。

于 2013-11-07T17:23:57.290 回答
1

属性selected应该在option标签内

于 2013-11-07T17:28:19.030 回答