0

ajax 呼び出しからデータを受け取った後、select 要素の optionsText を更新する方法を探しています。

複数のフィールドとチェックボックスが関連付けられたselect要素のかなり標準的なビュー設定だと思います。

データを取得するために ajax 呼び出しを行う前に、optionsText プロパティを使用して「データの読み込み中...」オプションを設定し、データ呼び出しが完了したら、optionsText を削除し、選択オプションを最初の「実際の」に設定します。リスト内の 1 つ、つまり、データ呼び出しから返された配列の最初の要素です。

optionsText を削除しない場合は、少なくとも「Pick a foobar」に変更して、ユーザーがデータ呼び出しが完了したことを認識できるようにします。

誰にもアイデアはありますか?ありがとう!

4

1 に答える 1

1

ここで行ったように、オプションモデルの値を変更するだけです

var vm=function(){
    var self=this;
    self.selected=ko.observable();
    self.options=ko.observable([{txt:'Loading',val:-1}]);
    self.status=ko.observable('Loading');
    self.init=function(){
        setTimeout(function(){
             self.status('Loaded');
            self.options([
                {txt:'First Option',val:0},{txt:'2nd Option',val:1}]);
        },1000);
    }
    self.init();
}
ko.applyBindings(new vm());

http://jsfiddle.net/dhanasekaran/SRLvj/

于 2013-09-30T06:59:47.967 に答える