angulaire.js - liaison bidirectionnelle angulairejs
世界只因有你
世界只因有你 2017-05-15 16:55:24
0
2
514

input a une liaison ng-model La saisie manuelle peut modifier cette valeur. J'ai utilisé jquery pour modifier la valeur d'un input $('#dd').val('str');
puis le scope de model. est resté inchangé
Aide

世界只因有你
世界只因有你

répondre à tous(2)
漂亮男人

Si vous utilisez angular way pour modifier et mettre à jour la valeur du DOM ou des variables, aucune opération supplémentaire n'est requise.

Mais si vous vous éloignez d'Angular et utilisez du code comme jquery qui ne fait pas partie du système d'Angular, vous devez informer Angular de vos modifications afin qu'Angular puisse obtenir la dernière valeur pour la refléter sur la page.

Vous pouvez donc utiliser la méthode suivante pour notifier angulaire

$scope.$apply(function(){
    jQuery('input').val(newValue);
})
刘奇

La bonne façon est... de ne pas modifier la vue manuellement.
Proposition :
1. Essayez d'exposer le modèle, puis modifiez le modèle. Après la modification, appelez $scope.$apply(). De plus, afin d'éviter diverses erreurs inattendues, vous pouvez écrire setTimeout(function(){$scope.$apply()},0) comme ceci.
2. Dans tous les cas, si vous avez ce besoin, cela doit être dû à un événement, une opération utilisateur ou un ajax. Les opérations Ajax peuvent utiliser le service $http fourni par Angular. Les opérations utilisateur peuvent généralement être encapsulées dans des directives.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal