2

「マイレージを追加して開く」をクリックすると、ここのフォームにある「ドロップダウン」効果を達成しようとしています

最初の読み込み時にのみ発生するようです.いつでもページを更新したり戻ったりすると、醜い通常の非jqueryドロップダウンに変わります. 私は、javascriptを使用して私の選択(ドロップダウン)にデータを入力するため、それを想定しています。何か助けていただければ幸いです....`

.js

// Create select element with options.
function makeRunRecord() {
    var formTag = document.getElementsByTagName('form'),
    selectList = ge('select'),
    makeSelect = document.createElement('select');
    makeSelect.setAttribute("id", "styles");
    makeSelect.setAttribute("name", "styles");
    makeSelect.setAttribute("class", "required select");
    makeSelect.setAttribute("data-native-menu", "false");
    var makePlace = document.createElement('option');
    makePlace.setAttribute("data-placeholder", "true");
    makePlace.setAttribute("value", "");
    makeSelect.appendChild(makePlace);
    for (var i=0, j=runningStyles.length; i<j; i++) {
        var makeOption = document.createElement('option');
        var optText = runningStyles[i];
        makeOption.setAttribute("value", optText);
        makeOption.innerHTML = optText;
        makeSelect.appendChild(makeOption);
    }
    selectList.appendChild(makeSelect);
};   
// Call Functions
makeRunRecord();    
});

.html

<li><div id="select"><label for="rStyle">Choose Run Style*</label></div>
4

1 に答える 1

1

makeRunRecord()jQueryMobileがページの拡張を完了する前に実行しようとしているようです。jqmの拡張が終了した直後にコードを実行するには、pageinitイベントを使用します。

次のようになります。

$( '#additem' ).live( 'pageinit',function(event){
  makeRunRecord();
});
于 2012-10-30T19:59:51.697 に答える