簡體   English   中英

Angularjs:選中單選按鈕

[英]Angularjs: radio button checked

我正在嘗試使用單選按鈕在AngularJS中構建顏色配置器,一切似乎都在工作,數據綁定等等......但是我無法設置默認的顏色單選按鈕 正如我在文檔中看到的那樣,如果ng-model與無線電值相同,則應自動檢查輸入,但我不知道這是否僅適用於字符串而不適用於對象。

這是HTML:

<div ng-app ng-controller="ThingControl">
    <ul >
        <li ng-repeat="color in colors">
            <input type="radio" ng-model="thing.color" value="{{color}}" />{{ color.name }}
        </li>
    </ul>
    Preview: {{ thing }}
</div> 

這是JS:

function ThingControl($scope){
    $scope.colors = [
        { name: "White", hex: "#ffffff"},
        { name: "Black", hex: "#000000"}
        ]

    $scope.thing = {
        color: $scope.colors[1]
    }

}

你可以在這個小提琴中看到前面的例子: http//jsfiddle.net/xWWwT/1/

首先十分感謝!

選擇與Value中定義的字符串匹配,因此您可以這樣做

value="{{color.name}}"

$scope.thing = {
    color: $scope.colors[1].name
}

要么

value="{{color}}"

$scope.thing = {
    color: JSON.stringify($scope.colors[1])
}

正如@bertez所提到的,使用ng-value是最好的解決方案。

ng-value="color"

你有沒有嘗試過ng-change指令? 您可以使用表達式將其設置為已選中,請嘗試此操作。

<div ng-app ng-controller="ThingControl">
<ul >
    <li ng-repeat="color in colors">
        <input type="radio" ng-model="thing.color" value="{{color}}" ng-checked="$index == 0" />{{ color.name }}
    </li>
</ul>
Preview: {{ thing }}
</div>

暫無
暫無

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

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