2013-08-29 12 views
5

मैं रेडियो बटन का उपयोग करके एंगुलरजेएस में एक रंग कॉन्फ़िगरेटर बनाने की कोशिश कर रहा हूं और सबकुछ काम कर रहा है, डेटा बांधता है, आदि ... लेकिन मैं डिफ़ॉल्ट रंग रेडियो सेट करने में सक्षम नहीं हूं बटन चेक किया गया। जैसा कि मैं दस्तावेज़ों में देखता हूं यदि एनजी-मॉडल रेडियो वैल्यू के समान है तो इनपुट ऑटो-चेक किया जाना चाहिए, लेकिन मुझे नहीं पता कि यह केवल तारों के लिए काम करता है, न कि ऑब्जेक्ट्स के लिए।कोणीय: रेडियो बटन

इस 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> 

और यह जेएस है:

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

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

} 

आप इस बेला में पिछले उदाहरण देख सकते हैं: http://jsfiddle.net/xWWwT/1/

बहुत पहले से ज्यादा

धन्यवाद !

उत्तर

6

चयन स्ट्रिंग मूल्य में परिभाषित के अनुरूप है, तो आप कर सकते हैं या तो

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" 
+0

हाँ, अपने समाधान मूल्य और मॉडल के रूप में काम करता है तार कर रहे हैं, लेकिन मैं केवल एक चीज वस्तु :(करने के लिए रंग नाम बाँध के रूप में आप यहाँ देख सकते हैं अगर मैं इसे अपने तरीके से कार्य करें: http: // jsfiddle। शुद्ध/xWWwT/4/ –

+0

@bertez 2 समाधान का प्रयास करें – zsong

+4

अंत में किसी आईआरसी में dmco बुलाया समाधान नहीं मिला:। http://jsfiddle.net/xWWwT/6/ एनजी-वैल्यू का उपयोग करना! :) –

0

आप पहले से ही करने की कोशिश की एनजी-परिवर्तन निर्देश? आप इसे सेट करने के लिए एक अभिव्यक्ति का उपयोग कर सकते हैं, इसे आज़माएं।

<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> 
संबंधित मुद्दे