2

アプリを最初に開いたときに、ajax 呼び出しを介していくつかの選択ボックスを動的に設定しています。ただし、ページが読み込まれると、選択ボックスが空で始まり、入力されるとそれに応じてサイズが調整されることに気付きます。これは煩わしく、UI の気を散らすものです。

document.ready メソッド内に人口メソッドがありますが、これに間違ってアプローチしている可能性がありますか?

$(document).ready( function(){

populateOptions(); // Populate our select box upon page load.

});

// Builds a select list and binds it to a class
function populateOptions(){

    var optionList = getOptions();
    var myList = "";

    // Loop over our returned result set and build our options
   for(i=0; optionList.length; i++){
       myList += "<option>"+optionList[i][1]+"</option>";
    }

    // Now take our myList and append it to our select
    $("#myOptionList").append(myList);
}

Options: <select id="myOptionList"></select>
4

3 に答える 3

2

cssでselectに幅を設定できます

于 2012-07-22T00:25:37.867 に答える
1

AJAX 経由で読み込み中に表示するダミー オプションを追加します。

<select id="myOptionList">
    <option>Loading...</option>
</select>

「読み込み」オプションをクリアし、利用可能になったら新しいリストを追加します

$("#myOptionList").html('');
$("#myOptionList").append(myList);

css で幅を設定するには:

#myOptionList{
width:150px;
}
于 2012-07-22T00:09:17.300 に答える
0

簡単な解決策の 1 つは、ajax 関数が呼び出されたときに子を直接作成することです。

populateOptions() 関数を終了する前に、select を に追加します。

この問題が発生したことを覚えています。解決することは可能ですが、これは非常に簡単な方法です。

この助けを願っています。

于 2012-07-22T00:07:02.343 に答える