javascript - Angular Chosen 默认选择不起作用

标签 javascript jquery angularjs jquery-chosen

我正在使用https://github.com/localytics/angular-chosen创建选择元素并选择默认项目:

<select chosen="{inherit_select_classes:true}" disable-search="true" class="form-control span6" ng-model="myPick">
  <option value=""></option>
  <option value="AAA">AAAAAAAAAAAAAAAA</option>
  <option value="BBB" selected="selected">BBBBBBBBBBBBBBB</option>
</select>

我希望默认选择 BBBBBBBBBBBBBBB 但它不起作用:

http://plnkr.co/edit/H2hmEukfjaPL1T4W298O?p=preview

使用 selected="selected"$scope.myPick = "BBB"; 也无法使其工作。你能帮忙解释一下为什么吗?

如果我删除模型,它就可以正常工作:

<select chosen="{inherit_select_classes:true}" disable-search="true" class="form-control span6">
  <option value=""></option>
  <option value="AAA">AAAAAAAAAAAAAAAA</option>
  <option value="BBB" selected="selected">BBBBBBBBBBBBBBB</option>
</select>

更新1

  • 我的项目已经在一堆模板中包含了一堆selectoption。将它们拉入 $scope.someObject 来执行 ng-options 非常耗时。

  • 如果我不必在任何地方声明或初始化 myPick ,而是将 selected 放入 html 模板中,那就最好了。

最佳答案

您可以像这样预定义选项,而不是通过标记插入选项:

$scope.options = {
  'AAA':'AAAAAAAAAAAAAAAA',
  'BBB':'BBBBBBBBBBBBBBB'

} ;
$scope.myPick = "BBBBBBBBBBBBBBB";

在您看来:

<select chosen="{inherit_select_classes:true}" disable-search="true" class="form-control span6" ng-options="v for (k,v) in options" ng-model="myPick">
</select>

您可以在这里查看它是如何工作的:http://plnkr.co/edit/aOV1agWFfJZaTU675wEF?p=preview

关于javascript - Angular Chosen 默认选择不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26110093/

相关文章:

javascript - 文档不会使用 Mongoose 的 save() 方法保存

javascript - 如何在 javascript 中获取静态公共(public)文件夹中的文件列表?

javascript - jQuery UI 自动完成 - 访问 JSON 中的嵌套对象

javascript - 并行执行函数并等待其完成

jquery - 如何在点击背景时关闭 ionic 弹出窗口

javascript - Html 添加/删除Child

javascript - 使用 FileTransfer 插件 Phonegap 在 Android 设备上保存 PDF 的位置

javascript - 嵌套 ng-repeat 中的复选框不可单击

json - 使用 slice 函数对 JSON 对象进行切片

angularjs - 来自用户设置的 Angular Moment 动态时区