2013-03-22 61 views
0

我经历的Angularjs tuts and docs given in the official angularjs website.angularjs分配绑定变量的HTML标记属性

在这里,我们增加一个选择框的排序,这样

<select ng-model="orderProp"> 
    <option value="name">Alphabetical</option> 
    <option value="age">Newest</option> 
    </select> 

,并在控制器中,我们给$scope.orderProp = "age"此工作正常, '最新'将是默认选择选项。

然后我试着把订单项放到一个模型上,然后用ng-repeat填充选择框。

<select ng-model="orderProp"> 
    <option ng-repeat="orderby in orderProperties" value="{{orderby.criteria}}">{{orderby.property}}</option> 
    </select> 

其中:

orderProp模式是:

function PhoneListCtrl($scope){ 

    $(document).ready($scope.orderProp = "age"); 

     $scope.orderProperties = [ 
      {"property":"Alphabetical","criteria":"name"}, 
      {"property":"Newest","criteria":"age"} 
     ]; 
} 

在DOM我可以看到value="name"value="age"。但是这次默认值没有设置为“最新”。我不明白为什么硬编码value="age"正在工作,而value="{{orderby.criteria}}"不是。任何人都可以请指导我通过。

+0

我发现,$ scope.orderProp =“age”期间的值正在设置,排序正在触发。但是选择框'