在select元素中选择最近的选项,在Angular.js中

在select元素中选择最近的选项,在Angular.js中,select,model,angularjs,controller,Select,Model,Angularjs,Controller,我的模板中有一个类似的选择: <select ng-model="selectedValue"> <option>$5</option> <option>$10</option> <option>$20</option> <option>$50</option> <option>$100</option> </selec

我的模板中有一个类似的选择:

<select ng-model="selectedValue">
    <option>$5</option>
    <option>$10</option>
    <option>$20</option>
    <option>$50</option>
    <option>$100</option>
</select>
如果选择元素中的选项之一是
somevalue
,则此选项有效。但是,如果不是,则select仅为空。所以我要做的是选择最接近
somevalue
的值。例如,如果我检索$9,我会选择$10选项

我知道如何使用jQuery来实现,但是这并不是真正的角度方式


在Angular中,有什么简单的方法可以做到这一点吗?

您必须为“选择最接近的选项”创建自己的逻辑。而不是执行
$scope.selectedValue=somevalue
您可以首先调用此逻辑从选项中获取最接近的(如果不是相同的)值,然后将其设置为
$scope.selectedValue
@user2104976,从select获取所有选项的最佳方法是什么?我知道如何使用jQuery和DOM操作,但据我所知,在Angular.js控制器中应该避免这种情况。只是想知道怎样做才是正确的方法?最好的方法是在你的范围内创建一个包含选项值的模型。您可以签出
ng options
指令,该指令接受要显示的选项。您可以找到文档。这是AngularJS的方法。因此,您的模型已经具有将显示的选项,您可以在控制器内使用这些选项。希望这是有意义的。您也可以查看文档中的注释,以了解如何进行。非常感谢@user2104976,这就是我将要做的。请随意添加您的评论作为回答,我会接受的。
$scope.selectedValue = somevalue;