AngularJS:如何设置ng-model=“searchText”的默认值?

kninwzqo  于 2022-10-31  发布在  Angular
关注(0)|答案(6)|浏览(195)

我无法将默认值设置为ng-model=“searchText”。
<input ng-model="searchText" value="can you see me" />
有人能帮我吗?

gjmwrych

gjmwrych1#

**第一个解决方案:**是在控制器中简单地初始化searchText。

App.controller('mainController',['$scope', function($scope) {
   $scope.searchText  = "can you see me";
}]);

**第二种解决方案:**是使用ng-init代替value

<input ng-model="searchText" ng-init="searchText ='can you see me'"></input>
5t7ly7z5

5t7ly7z52#

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="">
<div >
  <input ng-model="searchText" type="text" ng-init="searchText='your text'"/>
</div>  
  </div>

您可以使用ng-init

afdcj2ne

afdcj2ne3#

请尝试以下代码:

<input ng-model="searchText" ></input>

在控制器中

$scope.searchText = "your default value";

编辑:如果你不想在控制器中初始化默认值,只需

<input value="your default value" ></input>
uajslkp6

uajslkp64#

不要在输入字段中使用ng-init来设置值,这不是必需的。
只需将模型的作用域设置为所需的值,如果只是占位符文本,最好在input元素上使用html5的占位符属性。

<input type="text" ng-model="someText" placeholder="Initial Text">

这将在输入字段中给予一些文本,而无需向控制器范围添加任何内容。
如果你想把文本作为一个值,你可以不填写输入字段就传递,而不需要在你的控制器中设置。

$scope.someText = "Some Text";
tmb3ates

tmb3ates5#

您可以在控制器中设置默认值。如下所示:

app.controller('myCtrl', function($scope){
   $scope.searchText = "Some default value";
});

并在输入标记上将值属性保留为空。

hrirmatl

hrirmatl6#

对于更高的Angular 版本:
在ts文件中:

export class SearchComponent implements OnInit {
  search: string;

  ngOnInit(): void {
    this.search = "Some default value";
  }
}

html文件包含:

<input [(ngModel)]="searchText">

相关问题