我正在尝试创建一个选择下拉列表,该下拉列表模拟到作为数组一部分的对象内的特定参数但是我希望“null value”参数实际上具有一个值(或者只是能够插入一个额外的下拉列表中的选项。
<select class="form-control" ng-model="question.defaultGoToQuestion" ng-options="question.sequence as question.questionHeading for question in survey.questions">
<option value="-1">Finish</option>
</select>
然而,angular只是忽略select标记内部,除非它具有空值value=""
。无论value of -1
数组中的内容是什么,我怎样才能始终选择survey.questions
?
我也忘了提到-1
应该是一个整数,这样模型总是可以与整数值相关联而不是字符串。
我想要的东西几乎完全像这样:
<select class="form-control" ng-model="question.defaultGoToQuestion" ng-options="question.sequence as question.questionHeading for question in survey.questions">
<option value="">Finish</option>
</select>
除非我需要在完成选项中获得-1
值。
答案 0 :(得分:0)
如果您使用类似的内容来指定键/值对,则可以指定所需的值:
<select ng-model="selectedOption" ng-options="option for (key, value) in options"></select>
JavaScript的:
$scope.options = {
'select': -1,
'one': 1,
'two': 2,
'three': 3,
'four': 4,
'five': 5,
'six': 6
};
$scope.selectedOption = $scope.options[0];
答案 1 :(得分:0)
有点反直觉,你需要模型有一个值,但不希望它在数据结构中定义它。
对于一种方法,您可以使用unshift
$scope.survey.questions.unshift({sequence: -1, questionHeading: 'Finish'});
$scope.question.defaultGoToQuestion = $scope.survey.questions[0];