0

我已经尝试使用以下代码根据第一个下拉列表加载第二个下拉列表,并且效果很好。但是当我第二次选择第一个下拉菜单时,第二个下拉菜单不会清除其内容。它正在附加值。

第二个下拉选项的值也应该是“json_data[i].value”。但对我来说是“json_data[i].text”

这是我在单击第一个下拉菜单时使用的代码。

      $.ajax({
      url: "http://foo.bar/data.json",
      type: "POST",
      data: {
        article: produkt,
        color: farbe,
        size: groesse,
        form: typ
     }
     }).done(function (data) {
         var json_data = $.parseJSON(data.responseText.trim());

         for(var i=0;i<json_data.length;i++) {
            json_data[i].text = json_data[i].NAME;
            json_data[i].value = json_data[i].VALUE;
            oHandler2.add(json_data[i]);//adding
         }
         oHandler2.showRows(json_data.length);
     });

下面是我的html部分,

        <span class="field_outer">
        <label>Main Category</label>
        <div class="filter">
            <select id="main_category" name="main_category" class="ddTitle select" onchange="">
                <option value="0" selected>Select a main category</option>
                <option value="1">category1</option>
                <option value="2">category2</option>
            </select>
        </div>
        </span><!-- /.field_outer -->
        <span class="field_outer">
        <label>Sub Category</label>
        <div class="filter">
            <select id="sub_category" name="sub_category"  class="select" onchange="">
                <option value="0" selected>Select a sub category</option>
            </select>
        </div>
        </span>

请帮忙; 提前致谢 :-)

4

1 回答 1

2

destroy - 恢复原来的 dorpdown。

var oDropdown = $("#element").msDropdown().data("dd");
oDropdown.destroy()

refresh - 根据原始下拉菜单刷新 msdropdown UI 和值。

var oDropdown = $("#element").msDropdown().data("dd");
oDropdown.refresh(); //or
document.getElmentById("element").refresh();

详情请查看——

http://www.marghoobsuleman.com/mywork/jcomponents/image-dropdown/samples/index.html

于 2014-06-05T12:15:33.240 回答