ฉันกำลังพยายามให้ select-box เริ่มต้นด้วยตัวเลือกที่กรอกไว้ล่วงหน้าโดยใช้ ng-repeat กับ AngularJS 1.1.5 แต่การเลือกจะเริ่มต้นโดยไม่ได้เลือกไว้เสมอ นอกจากนี้ยังมีตัวเลือกว่างซึ่งฉันไม่ต้องการ ฉันคิดว่ามีผลข้างเคียงจากการไม่เลือกอะไร
ฉันสามารถใช้งานได้โดยใช้ ng-options แทน ng-repeat แต่ฉันต้องการใช้ ng-repeat สำหรับกรณีนี้ แม้ว่าตัวอย่างที่แคบลงของฉันจะไม่แสดง แต่ฉันก็ต้องการตั้งค่าแอตทริบิวต์หัวเรื่องของแต่ละตัวเลือกและไม่มีวิธีใดที่จะทำได้โดยใช้ตัวเลือก ng เท่าที่ฉันรู้
ฉันไม่คิดว่าสิ่งนี้เกี่ยวข้องกับขอบเขต AngularJs ทั่วไป / ปัญหาการสืบทอดต้นแบบ อย่างน้อยฉันก็ไม่เห็นอะไรชัดเจนเมื่อตรวจสอบใน Batarang นอกจากนี้เมื่อคุณเลือกตัวเลือกในการเลือกด้วย UI โมเดลจะอัปเดตอย่างถูกต้อง
นี่คือ HTML:
<body ng-app ng-controller="AppCtrl">
<div>
Operator is: {{filterCondition.operator}}
</div>
<select ng-model="filterCondition.operator">
<option
ng-repeat="operator in operators"
value="{{operator.value}}"
>
{{operator.displayName}}
</option>
</select>
</body>
และ JavaScript:
function AppCtrl($scope) {
$scope.filterCondition={
operator: 'eq'
}
$scope.operators = [
{value: 'eq', displayName: 'equals'},
{value: 'neq', displayName: 'not equal'}
]
}
JS Fiddle สำหรับสิ่งนี้: http://jsfiddle.net/coverbeck/FxM3B/2/