我有四个依赖的选择列表,我想为所有选择列表提供一个默认值/占位符,如下所示:select ...。问题是当我尝试这样做时:<option value=""> Select ... </option>它不起作用。因为当我更改第一个选择列表时,其他选择列表会由于依赖关系而自动更改。

这就是我填写依赖选择列表的方式:

    $("#slctTable").change(function()
    {
        $.getJSON("dropdown_code/get_fields.php?table=" + $(this).val(), success = function(data)
        {
                optionsFields= "";
        for(var i = 0; i < data.length; i++)
            {
                optionsFields += "<option value='" + data[i]['field_name'] + "'>" + data[i]['field_alias'] + "</option>";
            }
        $("#slctField").html("");
        $("#slctField").append(optionsFields);
        $("#slctField").change();
        })
    });
    });


该函数,我将optionsFields放入数组中:

function allValues(el) {
  var arr = $('option', el).map(function(i, v) {
    return this.value;
  }).get();

  return arr;
}

最佳答案

代替optionsFields= "";使用optionsFields= "<option value='0'> Select... </option>"。它不起作用,因为您可能正在HTML中设置默认值并在change函数中覆盖了默认值。

10-07 14:21