Knockout选择显示optionsText的对象对象

时间:2014-05-05 12:32:54

标签: c# asp.net-mvc knockout-mvc

我已经获得了一个json的对象列表,我已经填充到了observablearray([])中。我知道数据存在,因为如果我这样做:

<table id="tblColors">
<thead>
    <tr>
        <th padding: 10px; >Color</th>
    </tr>
</thead>
<tbody data-bind="foreach: AllColors">
    <tr>
        <td data-bind="text: ColorName"></td>
    </tr>
</tbody>

视图显示所有颜色。

然而,当我这样做时:

<select data-bind="options: AllColors, optionsText: AllColors.ColorName, 
    value: AllColors.ID, optionsCaption: 'Select Color...'"></select> 

我得到默认&#34;选择颜色......&#34;在下拉框中,但每种颜色都有[object Object]

我已尝试过optionsText:ColorName,但程序停止并说出JavaScript运行时错误:&#39; ColorName&#39;未定义。

1 个答案:

答案 0 :(得分:4)

尝试这样

  <select data-bind="options: AllColors, optionsText: 'ColorName', value: selectedColor, optionsCaption: 'Choose...'></select

单引号(&#39;)是秘密酱。