検索

ホームページ  >  に質問  >  本文

angular.js - angularjs 双方向バインディング

input には ng-model バインディングがあります。手動入力ではこの値を変更できます。jquery input$('#dd').val('str'); の値を変更するために
を使用しました。 scopeヘルプmodelは変わりません。

世界只因有你世界只因有你2813日前531

全員に返信(2)返信します

  • 漂亮男人

    漂亮男人2017-05-15 16:57:24

    を使用して DOM または変数の値を変更および更新する場合、追加の操作は必要ありません。angular way

    ただし、angular から離脱して、angular システム内にない jquery などのコードを使用する場合は、変更を angular に通知し、angular に最新の値を取得させてページに反映させる必要があります。

    したがって、次のメソッドを使用して angular に通知できます

    リーリー

    返事
    0
  • 怪我咯

    怪我咯2017-05-15 16:57:24

    正しい方法は...ビューを手動で変更しないことです。
    提案:
    1. モデルを公開し、変更後に $scope.$apply() を呼び出します。さらに、さまざまな予期せぬエラーを回避するために、次のように setTimeout(function(){$scope.$apply()},0) を書くことができます。
    2. いずれにせよ、このようなニーズがある場合は、何らかのイベント、ユーザー操作、または Ajax が原因である必要があります。 Ajax 操作は、Angular によって提供される $http サービスを使用できます。通常、ユーザー操作はディレクティブにカプセル化できます。

    返事
    0
  • キャンセル返事