こんにちは私は、動的にオプションを作成したいid 'quote-area'の選択ボックスを持っています。追加する要素が見つからないようです
jQueryモバイルとHTML5を使用するモバイルアプリ向けです。
私は、ローカルに保存された領域のテーブルを持っています。私はそれらを取り出してforループに入れて、選択ボックスに追加するHTML文字列を作成します。
は、ここに私のJSです:
function(tx, results) {
len = results.rows.length;
var markup = [];
for(var i=0; i< len; i++){
var area_id= results.rows.item(i).area_id;
var label = results.rows.item(i).label;
markup.push("<option value='"+area_id+"'>");
markup.push(label);
markup.push("</option>");
}
alert(markup.join(""));
$('#quote-area').append(markup.join(""));
}
);
HTML:
<select name="area" id="quote-area"></select>
マイアラートを実行しますと、私はマークアップが正しく構築されている見ることができます。私の選択したボックスには何も起こりません。私は選択IDをチェックした。
jsファイルが最初に読み込まれ、その後の各HTMLページがDOM(jQueryモバイル機能)にajaxedされるからです。だから、javasciptがダウンロードされても、選択ボックスはまだ存在しないのですか?
誰もがこれを手伝ってくれますか?何らかのライブイベントを使用する必要がありますか?
UPDATE:スクリプトがロードされたとき、リストはDOMの一部ではないので、私はそれを、ほぼ正だから、私は、ライブクエリプラグインを使用してみました
。しかし、まだ運がありません。
$('#quote-area').livequery(function(){
$(this).append($("<option></option>").attr("value",area_id).text(label));
});
は、jQueryのモバイル上のDOM readyイベントはありますか?もしそうなら、あなたはそれを使っていますか?これは、まだDOMに選択ボックスが存在しないという問題を解決します。 – Fred
私はこの質問に対する答えをチェックすることをお勧めします:http://stackoverflow.com/questions/170986/what-is-the-best-way-to-add-options-to-a-select-from-an- array-with-jquery – pederOverland