Javascript 如何设置使用AngularJS选择的默认选项?

Javascript 如何设置使用AngularJS选择的默认选项?,javascript,angularjs,Javascript,Angularjs,我一直在努力为angularJS设置默认的预选选项,但由于某些原因我无法设置。这是一本书 以下是相关代码: <select ng-model="selectedOption" ng-options="option.value as option.name for option in options"> </select> 我已经尝试了nginit和许多不同的方法;我不知道如何使顶部选项成为预选选项。只需更新元素的模型,即selec

我一直在努力为angularJS设置默认的预选选项,但由于某些原因我无法设置。这是一本书

以下是相关代码:

<select 
      ng-model="selectedOption" 
      ng-options="option.value as option.name for option in options">
    </select>


我已经尝试了nginit和许多不同的方法;我不知道如何使顶部选项成为预选选项。

只需更新元素的模型,即
selectedOption='yourdaultvalue'

您使用的angular版本是什么? 如果是最新版本,则可以使用以下代码:

    <select 
      ng-model="selectedOption" [ng-value]='yourDefaultValue'`
      ng-options="option.value as option.name for option in options">
    </select>

答案建议使用
nginit
。我会将默认选项分配到控制器或指令的
链接
功能中的
selectedOption

$scope.selectedOption = options[0]
我认为没有必要为这个简单的任务使用另一个指令。

链接到更新的plunkr:

应避免更新在功能中移动的型号代码以及
选择为
跟踪方式
,如中所述


在同一表达式中使用select as和track by时要小心。

如果要设置
选项中预定义的选项之一,
在
ng init
中,执行类似于
this$scope.selectedOption=
的操作,其中
是要在默认情况下标记为选中的对象的值属性。例如,
1
如果您在
options
中的第一个对象是,
{value:1,name:“Option Number 1}
。请参见下面的代码:

$scope.options = [{value:1, name: "Option 1"}, {value:2, name: "Options 2"}];

$scope.selectedOption = 1;
<select
    ng-model="selectedOption"
    ng-options="option.value as option.name for option in options">
    <option value="">--Default--</option>
</select>
另一方面,如果您只想显示一个预定义的选项,指示用户选择一个选项(而不是
选项中的一个选项)。。。
这是一个非常简单(但有效的实现方法)。请参阅下面的代码:

$scope.options = [{value:1, name: "Option 1"}, {value:2, name: "Options 2"}];

$scope.selectedOption = 1;
<select
    ng-model="selectedOption"
    ng-options="option.value as option.name for option in options">
    <option value="">--Default--</option>
</select>

--违约--

Duplicate of?您提到您已经尝试了
ng init
许多方法--您是否以该答案中使用的特定方式尝试过它?建议的close as Duplicate中的答案将起作用,但我不建议使用它,因为这不是
ng init
的设计目的。这很有效。我正在使用AJAX调用来填充我认为这会更复杂。另一方面,我现在在ng include模板中设置select时遇到问题。似乎复制粘贴html会使select语句工作正常,但仅通过ng include导入它会使它出错。@iamsampsan,请使用支持工具编辑您的问题code@iamsampsan,我可以补充什么让我的回答可以接受?