Html 在选择下拉列表中使用选项id而不是选项值更新数据模型

Html 在选择下拉列表中使用选项id而不是选项值更新数据模型,html,angularjs,angular-ngmodel,Html,Angularjs,Angular Ngmodel,我是新手。我有一个json值,我将根据它填充我的html。我需要用两个选项填充select下拉列表,并根据json中提到的标志自动选择一个选项 下面是我的json $scope.alertdata=[{"Action": "1", "Name":"Peter"},{"Action": "2", "Name":"Steve"},{"Action": "3", "Name":"Khan"}] 我的HTML <tr ng-repeat="data in alertdata"> &

我是新手。我有一个json值,我将根据它填充我的html。我需要用两个选项填充select下拉列表,并根据json中提到的标志自动选择一个选项

下面是我的json

$scope.alertdata=[{"Action": "1", "Name":"Peter"},{"Action": "2", "Name":"Steve"},{"Action": "3", "Name":"Khan"}]
我的HTML

<tr ng-repeat="data in alertdata">
    <td>
<select ng-model="data.Action">
                            <option ng-selected="data.Action == '1' " id="data.Action">Option1</option>
                            <option ng-selected="data.Action == '2' " id="data.Action">Option2</option>
                            <option ng-selected="data.Action == '3' " id="data.Action">Option3</option>
                            <option ng-selected="data.Action == '4' " id="data.Action">Option4</option>
                        </select>
</td>
</tr>

选择1
选择2
选择3
选择4
在上面的HTML中,每当我在下拉列表中更改我的选项时,我的模型就会随着所选选项的值而更改。相反,我希望在我的模型中更新选项的id,因为我需要根据新的选项选择处理更新的模型


提前感谢

您可以使用angular的
ng选项
,当
ng型号
预先填充时,它会自动选择正确的选项:

$scope.availableOptions = [
    { id: "1", name: "Option1" },
    { id: "2", name: "Option2" },
    { id: "3", name: "Option3" },
    { id: "4", name: "Option4" }
];
然后在html中:

<tr ng-repeat="data in alertdata">
    <td>
        <select ng-model="data.Action"
                ng-options="option.id as option.name for option in availableOptions">
        </select>
    </td>
</tr>


请参见

您的html没有意义。您有一个数组
data
,具有多个操作。然后将
ng模型
绑定到不存在的
data.Action
。除此之外,我看不出您的选项有什么意义(使用
id
和标签)。请准确解释你想做什么,因为看起来你做得不对。更新了上面的HTML。选项是硬编码的,我只需要根据json中的“Action”标志自动选择选项。每当用户更改选项时,我希望将选项的id更新为模型,而不是选项文本。非常感谢:)它可以工作。据我了解,ng模型中的data.Action遵循ng options中提到的option.id。如果我错了,请纠正我。是的,那是正确的,请参阅以供参考