8

我在我想要添加所选功能的角度视图中选择:

<select ng-options="value for value in deutscheBankEvent.dates" ng-init="" ng-model="chosenA" class="chzn-select">
 <option style="display:none" value="">Wählen Sie ein Datum</option>
 </select><br/>

我的控制器:当我在这里注入 .chosen 函数时,它会清除选项。

function Ctrl($scope,$http) {

  $scope.text = '';
  $scope.user = {name: '', last: '', location: ''};
  $scope.value = 0;
  $scope.sendForm = function (){
       $http.post('/Submit/To/Url', $scope.data).success(function(data) {
           alert('done!');
       });
    };
}

我的页脚:

<g:javascript>
 $(".chzn-select").chosen(); $(".chzn-select-deselect").chosen({allow_single_deselect:true});
            jQuery(".adressen1_chzn-select").chosen();jQuery(".adressen0_chzn-select").chosen();
        });
</g:javascript>

我不知道如何让选择的工作。在控制器内部它清除选项并且不适用,其余的没有任何区别。任何想法表示赞赏

4

2 回答 2

10

您的解决方案将不起作用,因为 jQuery 代码会在元素实际在 DOM 中创建之前触发。您应该使用表单元素上的指令来解决此问题。

元素需要动态创建,因此您实际上是在 DOM 元素上操作 - 非常适合 Angular 的指令。没有必要使用 jQuery,并且在使用 Angular 时尽量避免使用它。请注意,由于已选择的依赖项,仍然需要 jQuery 。

我用这套解决了这个问题:

  1. 角度选择指令https://github.com/localytics/angular-chosen
  2. [可选] Bootstrap3 样式https://github.com/alxlit/bootstrap-chosen

我建议您尝试自己编写指令。这是一个很好的做法。你可以试试这个:http ://www.youtube.com/watch?v=8ozyXwLzFYs

祝你好运!

于 2013-11-28T09:31:23.867 回答
7

你也许应该试试http://angular-ui.github.com/

这是一套角度指令。其中你会发现'select2'指令,它作为选择插件的代理准确地说是Select2插件)。

于 2013-02-25T14:59:46.513 回答