angularjs传递选择选项

时间:2013-09-12 13:59:18

标签: javascript angularjs

使用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" />

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

2 个答案:

答案 0 :(得分:0)

ngModel保存所选选项的值。因此,从select标记中删除value属性。假设模型如下

$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" />

答案 1 :(得分:0)

你可以这样写:

<select ng-model="searchDropdown"  ng-class="{active: isDropdownActive}">
            <option ng-repeat="item in data.results" value="{{ item[settings.filterOptions[0].value] }}" >{{ item[settings.filterOptions[0].value] }}</option>
</select>