0

コンボボックス (入力) に AJAX のデータを入力しようとしています。これは、別の選択コントロール (状態コントロール) で選択されている、選択された状態のすべての都市を取得するためです。

私が試したこと:

状態のコンボボックスで「変更」イベントを使用しています。状態が選択されている場合、都市を検索して都市コントロールに入力します。

            $("#state").on("change", function () {

            getCities($(this), $("#city"));
        });

それは実際には機能していますが、私の本当の問題は次のとおりです。このデータをコントロールに持ってくると、それをクリックして補充する必要があります (以前の状態データはまだそこにあります)。状態選択入力の状態。そして、これとうまくいっているもう1つの問題は、州選択入力が都市を変更するたびに最初のオプション(--- SELECT CITY ---)を選択することです。関数コードは次のとおりです。

function getCities(stateControl, cityControl) {

    if (stateControl.val()) {
        var options = '<option value="0" selected="selected">--- CHOOSE CITY --- </option>';
        cityControl.html(options);
        var dataString = "state="+stateControl.val();
        $.ajax({
            type: "POST",
            url: "cities.php",
            data: dataString,
            dataType: "json",
            success: function (resposta) { 

                    for(var i=0; i < resposta.length; i++){    
                        options += '<option value="' + city[i].cod_cidade + '">' + cities[i].nome + '</option>';                                                      
                    };
                    controleCidades.html(options);
            }
        });
    }

}

4

1 に答える 1

0

jQuery:

   $("#city").find('option').remove();

JavaScript:

document.getElementById('city').options.length = 0;

追加する前にこれを使用すると、以前のオプションがすべて削除されます。

ここを参照

于 2013-03-21T05:26:52.733 に答える