簡體   English   中英

如何在angularjs中使用ng-options

[英]How to use ng-options in angularjs

select元素未按預期綁定。

HTML:

<select ng-model="SelectedPage" 
 ng-change="ShowPageResult();" ng-options="o for o in PageNumbers">
</select>

ctrl.js:

function BindPageNumbers() {        
        $scope.PageNumbers = [];
        for (var i = 1; i <= 2) ; i++) {
            $scope.PageNumbers.push(i);
        }      
    }

輸出:

<option value="0"label="1">1</option>
<option value="1" label="2">2</option>

如果我把$scope.PageNumbers.push(i.toString()); ,則輸出為

<option value="?"label=""></option>
<option value="0" label="1">1</option>
<option value="1" label="2">2</option>

預期:

<option value="1">1</option>
<option value="2">2</option>

為了獲得所需的o / p應該做什么: http : //jsfiddle.net/s222904f/

在您的控制器中:

$scope.PageNumbers = [];
for (var i = 1; i <= 2 ; i++) {
    $scope.PageNumbers.push({ id: i, value: i });
}

您認為:

<select ng-model="SelectedPage"    
    ng-options="o.id for o in PageNumbers track by o.value"></select>

檢查它: http : //jsfiddle.net/khwuv4Lj/

根據此處的答案,存在空選項是因為

ng-model="SelectedPage"

行將其綁定到一個空字符串。 如果在范圍內選擇,則可以通過設置默認值來避免這種情況。

編輯:Plnkr已更新,可修復OP的注釋。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM