Angular JS -绑定下拉(ng-options)到自定义对象并显示选中的值



我想要在打开编辑簿表单时显示ddl上的初始值。但是它不显示任何值,请参阅我用来绑定ddl的代码—newbook和author是上面定义的JSON数据。

下拉列表绑定到author json数组,格式如下-

{id:1, Name: XYZ}

,此DDL是以下格式的图书编辑表单的一部分-

newbook = {
    Id:bctx.bookDetail.Id,
    Author: { Id: bctx.bookDetail.AuthorId, Name: bctx.bookDetail.AuthorName },
    Genre: bctx.bookDetail.Genre,
    Price: bctx.bookDetail.Price,
    Title: bctx.bookDetail.Title,
    Year: bctx.bookDetail.Year
};   

<select ng-options="author as author.Name for author in actrl.authors" ng-model="bctrl.newbook.Author" required>
    <option value="">--Select--</option>
</select>  

我认为选择选项只能是简单的对象,因此您可能希望将选择更改为id(或任何其他数字/字符串值)。您可以通过监听change事件在控制器中检索实际选中的作者对象。

浏览完文档后,您可以查看"track by"以启用复杂的对象选择。

最新更新