2016-08-22 71 views
0

我用ngstorage保存在localStorage的一些值 我contrroller是:绑定到下拉

app.controller("main", function($scope, $localStorage) { 
$scope.$storage = $localStorage.$default({   
      selectedlanguage: { language: null, text: "All Languages" } 
     }); 
    $scope.languages = [ 
      { language: null, text: "All Languages" }, 
      { language: "en", text: "English" }, 
      { language: "ar", text: "Arabic" } 
     ]; 

} 

我的观点是:

<select ng-model="$storage.selectedlanguage" ng-options="lang.text for lang in languages"> 
</select> 

重新加载该页面角的selectedlanguage不能结合时 在此先感谢

回答

1

在ng-options属性中,您可以指定表达式中每个选项的值和标题精灵,你的另一个问题是你指定一个对象作为ng模型,你需要告诉下拉哪个值匹配,所以在选定的语言对象上访问语言将正常工作。

<select ng-model="$storage.selectedlanguage.language" ng-options="lang.language as lang.text for lang in languages"> 
</select> 

上面是一样的下方,但更复杂的表达式,下面的是只是更容易阅读,但它是完全一样的:

<select ng-model="$storage.selectedlanguage.language"> 
    <option ng-repeat="lang in languages" value="{{lang.language}}"> 
     {{lang.text}} 
    </option> 
</select> 

演示:https://jsfiddle.net/suunyz3e/289/

+0

谢谢。你回答解决我的问题:) –

+0

很高兴帮助@beshoysemsem! –