每天学习有关AngularJS的更多信息。

style包含style.StyleIDstyle.StyleNamestyle.EncryptedValue

我有以下代码:

<select data-ng-model="StyleID"
    data-ng-options="s.StyleID as s.StyleName for s in styles"
    data-ng-change="GetOptions()">
    <option value="">--Select Style--</option>
</select>


我需要将EncryptedValue传递到GetOptions()例如(GetOptions(EncryptedValue))或能够访问类似SelectedStyle.EncryptedValue的内容

我该怎么做?



更新

将我的代码更改为:

<select data-ng-model="style"
    data-ng-options="s.StyleID as s.StyleName for s in styles"
    data-ng-change="GetOptions()">
    <option value="">--Select Style--</option>
</select>


我的控制器:

$scope.GetOptions = function ()
{
    alert($scope.style);
}


alert($scope.style);返回StyleID的字符串

alert($scope.style.StyleID);返回undefined

到底是怎么回事 ???

注意:styles是通过AJAX调用(JSON结果)加载的。

最佳答案

您可能需要重新设计控制器中的处理方式,但是可以将模型更改为:

<select data-ng-model="selectedStyle"
    data-ng-options="s as s.StyleName for s in styles"
    data-ng-change="GetOptions()">
    <option value="">--Select Style--</option>
</select>


然后在您的控制器中,您可以执行此操作

$scope.GetOptions = function(){
    console.log($scope.selectedStyle.EncryptedValue)
};


现在唯一的事情是,如果您要引用StyleId,则必须采用以下方式:

$scope.selectedStyle.StyleId

关于javascript - AngularJS当前选择的模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24492842/

10-12 06:32