我需要使用json选择一个下拉值。我可以轻松地将数据输入到文本输入中,但如何选择下拉值?
http://plnkr.co/edit/R5RNruDNUydSJufVRIVh
拉入json:
app.controller('MainCtrl', function ($scope, $http, $log) {
// bind json data to form
$http.get('static.json').
success(function(data, status, headers, config) {
$scope.data = data;
}).
error(function(data, status, headers, config) {
// log error
});
});
将json数据放入我们的表单中:
<h4>Select value 2 using json data</h4>
<select data-ng-model="data.myDropdown.value">
<option value="">Select a value</option>
<option value="1">Value 1</option>
<option value="2">Value 2</option>
</select>
<hr />
<h4>I can pull in json data into text inputs but not dropdowns.</h4>
<p><input type="text" name="textData" data-ng-model="data.textData"></p>
json:
{
"textData":"Example text data",
"myDropdown":"value 2"
}
答案 0 :(得分:1)
将您的模型更改为:
<select data-ng-model="data.myDropdown">
值得:
<option value="value 2">Value 2</option>
答案 1 :(得分:1)
首先,value
中的data-ng-model="data.myDropdown.value"
不是必需的。 data.myDropdown
已经是一个字符串,因此.value
会为您提供undefined
。
其次,<option>
与值匹配,而不是与文本匹配。因此,您应将JSON值更改为2
,或将选项的值更改为value 2
。