使用MVC 4和angularjs,我试图将选定的选项传递给控制器​​。我可以使它工作:

    <select ng-model="record.Line">
        <option value="1" id="line">1</option>
        <option value="2" id="line">2</option>
        <option value="3" id="line">3</option>
    </select>


但是我无法使它起作用,该值没有传递任何东西:

    <select ng-model="record.Line" value="record.Line" ng-options="l.name for l in lines" />


我试过为“值”使用几个不同的选项,但是没有运气。如果我能弄清楚为什么它不起作用,我希望第二种选择。

最佳答案

ngModel保留所选选项的值。因此,从选择标签中删除值属性。假设模型如下

$scope.lines = [
    {
        name:"1"
    },
    {
        name:"2"
    },
    {
        name:"3"
    }
];


您也可以将ng-options更改为以下值以指定值:

<select ng-model="record.Line" ng-options="l.name as l.name for l in lines" />

10-06 07:34
查看更多