为了账号安全,请及时绑定邮箱和手机立即绑定

AngularJS - 使用ng模型时,忽略输入文本框的Value属性?

AngularJS - 使用ng模型时,忽略输入文本框的Value属性?

AngularJS - 使用ng模型时,忽略输入文本框的Value属性?如果我将一个简单的输入文本框值设置为下面的“bob”,请使用AngularJS。如果ng-model添加了属性,则不显示该值。    <input type="text"            id="rootFolder"            ng-model="rootFolders"            disabled="disabled"            value="Bob"            size="40"/>任何人都知道一个简单的工作来默认这个输入的东西,并保持ng-model?我尝试使用ng-bind默认值,但似乎也不起作用。
查看完整描述

3 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

这是期望的行为,您应该在控制器中定义模型,而不是在视图中定义。

<div ng-controller="Main">
  <input type="text" ng-model="rootFolders"></div>function Main($scope) {
  $scope.rootFolders = 'bob';
}


查看完整回答
反对 回复 2019-08-15
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

覆盖输入指令确实可以完成这项工作。我对Dan Hunsaker的代码做了一些小改动:

  • 在尝试使用$parse().assign()没有ngModel属性的字段之前添加了对ngModel的检查。

  • 更正了assign()函数参数顺序。

app.directive('input', function ($parse) {
  return {
    restrict: 'E',
    require: '?ngModel',
    link: function (scope, element, attrs) {
      if (attrs.ngModel && attrs.value) {
        $parse(attrs.ngModel).assign(scope, attrs.value);
      }
    }
  };});


查看完整回答
反对 回复 2019-08-15
  • 3 回答
  • 0 关注
  • 617 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信