显示函数无法使用Materialize和jQuery

时间:2017-07-15 09:38:55

标签: javascript jquery materialize

我有两个选择,第二个是隐藏的,如果第一个选择已经更改,应该显示它,我通过on('change', function(){ ...检查它并且它到目前为止工作。我已经检查过,并在第一个选择框更改时显示console.log

这里的问题是,当我更改第一个选择框的值时,console.log显示有值,但第二个选择框未显示。

我已更新 MaterialiseCSS jQuery ,这是我的脚本:

<script>
    $(document).ready(function() {
        $('select').material_select();
        $('#school-list').on('change', function() {
            $('#section-list').show();
            console.log(this.value);
        });
    });
</script>

这是我的选择:

            <div class="row margin">
              <div class="input-field col s12">
                <select id="school-list" name="school-list">
                  <option value="" disabled selected>Choose your school</option>
                   ...
                </select>
                <label>School</label>
              </div>
            </div>
            <div class="row margin" style="display: none">
              <div class="input-field col s12">
                <select id="section-list" name="section-list">
                  <option value="" disabled selected>Choose your section</option>
                   ...
                </select>
                <label>Section</label>
              </div>
            </div>

1 个答案:

答案 0 :(得分:0)

您需要显示第二个选择的父行。

您可以尝试以下代码:

<script>
    $(document).ready(function() {
        $('select').material_select();
        $('#school-list').on('change', function() {
            $('#section-list').parents(".row:eq(0)").show();
            console.log(this.value);
        });
    });
</script>