ng-options默认选中

本文详细介绍了在AngularJS中如何设置ng-options的默认选中项,包括使用ng-init、ng-repeat以及当值为对象时的处理方法。通过实例展示了不同场景下设置默认值的具体操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 ng-options默认选中,很简单的问题,网上乱七八糟说不到重点,自己记录下常见的几种方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ng-options默认选中</title>
    <script src="api/angularjs/angular.min.js"></script>
</head>
<body>
    <div ng-app="myApp" ng-controller="myCtrl">
        <h5>使用ng-options,ng-init设默认值</h5>
        <select ng-init="selectedName = names[1]" ng-model="selectedName" ng-options="x for x in names"></select>
        <h5>使用ng-repeat</h5>
        <select ng-model="optionSelected">
            <option ng-repeat="x in names">{{x}}</option>
        </select>
        <h5>使用 ng-options,值为对象</h5>
        <select ng-model="selectSite" ng-options="y for (x,y) in sites"></select>
        <h5>选中的为{{selectSite}}</h5>
    </div>
</body>
 <script type="text/javascript">
     var app = angular.module('myApp',[]);
     app.controller("myCtrl",function ($scope) {
         $scope.names=['google','runoob','taobao'];
         $scope.sites ={
             site01:"google",
             site02:"runboo",
             site03:"taobao"
         };
         $scope.optionSelected=$scope.names[1];//为ng-repeat设默认值
         $scope.selectSite=$scope.sites.site02;//为ng-options设默认值
     })
 </script>
</html>

 

`ng-options` 是 AngularJS 中用来生成下拉框选项的指令,其语法比较复杂,但是非常灵活,可以满足各种需求。 以下是 `ng-options` 的语法: ``` ng-options="expression for item in collection track by trackexpr" ``` 其中,`expression` 是一个 AngularJS 表达式,用来定义下拉框选项的显示文本。`item` 是一个临时变量,用来循环遍历 `collection` 中的元素。`collection` 是一个数组或对象,用来定义下拉框的选项。 `trackexpr` 是一个可选的表达式,用来跟踪下拉框选项的值。如果没有指定 `trackexpr`,则默认使用 `item` 作为选项的值。 以下是一些常见的 `ng-options` 用法示例: 1. 从数组中生成选项: ```html <select ng-model="selectedItem" ng-options="item for item in items"></select> ``` 在上面的代码中,我们将 `items` 数组中的每个元素作为下拉框的选项,同时使用 `ng-model` 指令来绑定选中值。 2. 从对象中生成选项: ```html <select ng-model="selectedItem" ng-options="key as value for (key, value) in items"></select> ``` 在上面的代码中,我们将 `items` 对象中的每个键值对作为下拉框的选项,`key` 作为选项的值,`value` 作为选项的文本。 3. 从数组中生成选项,并指定选项的文本和值: ```html <select ng-model="selectedItem" ng-options="item.id as item.name for item in items"></select> ``` 在上面的代码中,我们将 `items` 数组中的每个元素作为下拉框的选项,但是指定了选项的显示文本为 `item.name`,选项的值为 `item.id`。 4. 使用 `track by` 来跟踪选项的值: ```html <select ng-model="selectedItem" ng-options="item.id as item.name for item in items track by item.id"></select> ``` 在上面的代码中,我们使用 `track by` 来跟踪选项的值,这样可以避免在选项发生变化时引起性能问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值