4

私は Web ベース プロジェクトを作成しており、angularjs を使用しています。select html 要素の ng:disabled ディレクティブに小さなバグが見つかりました。要素が無効になっている場合でも、キーボードの矢印を上下に使用して値を変更できます。したがって、選択要素を無効にして、この小さなことを排除したいと思います。

誰かがこのディレクティブの仕組みを説明できますか?? angularjs を見てきましたが、理解できません。

それはバグなのか、それとも正常な動作なのか、何か理解できないのですか??

事前にご回答いただきありがとうございます。

例: http://jsfiddle.net/kickwce/m23Gr/1/

<select class="select input-large" id="listType" name="listType"
                        ng-model="listType" ng-disabled="listType">
                        <option value="">- choose -</option>
                        <option value="item1">List of tracks</option>
                        <option value="item2">List of collections</option>
                    </select>
4

1 に答える 1

6

問題は、選択ボックスがフォーカスを失っていないことです。ディレクティブはその問題を解決できます:

myApp.directive('blur', function () {
  return function (scope, element, attrs) {
    attrs.$observe('blur', function (newValue) {
      newValue != "" && element[0].blur();
    });
  }
});

HTML:

<select ... ng-model="listType" ng-disabled="listType" blur="{{listType}}">

フィドル

おそらく、選択リストでng-optionsを使用する必要があります。

于 2013-01-12T02:21:07.700 に答える