【发布时间】:2009-12-21 12:13:47
【问题描述】:
假设 Items 和 ItemTypes 具有数字主键 ItemID 和 ItemTypeID。每个 Item 都分配有一个 ItemType。
我有一个 JQGrid 来编辑项目。当不处于编辑模式时,我想查看 ItemType 的名称,而不是 ItemTypeID:
类型 |标题 -----------+-------- 甲类 |项目 1 甲类 |第 2 项 B类 |第 3 项 B类 |第 4 项在编辑模式下,我希望看到一个显示 ItemType 文本的下拉菜单,但它会将 ItemTypeID 返回给服务器。
这是我目前所拥有的(使用 JQGrid 的 ASP.NET 包装器):
<trirand:jqgrid id="Grid1" runat="server" ... >
<columns>
<trirand:jqgridcolumn datafield="ItemID" editable="false" visible="false" width="50" primarykey="true" />
<trirand:jqgridcolumn datafield="ItemTypeID" editable="true" edittype="DropDown" editorcontrolid="ItemTypes" />
<trirand:jqgridcolumn datafield="Title" editable="true" sortable="true" />
...
</columns>
</trirand:jqgrid>
<asp:sqldatasource runat="server" id="ItemTypesDatasource" connectionstring="<%$ ConnectionStrings:Main %>" selectcommand="Select ItemTypeID,Title from ItemTypes order by Title" />
<asp:dropdownlist runat="server" id="ItemTypes" datasourceid="ItemTypesDatasource" datavaluefield="ItemTypeID" datatextfield="Title" />
问题在于,当不处于编辑模式时,它显示的是数字 ItemTypeID,而不是文本标签:
类型 |标题 -----------+-------- 100123 |项目 1 100123 |第 2 项 100124 |第 3 项 100124 |第 4 项有什么方法可以让 JQGrid 尊重 DataValueField 和 DataTextField 之间的区别? (使用 jQuery API 或 ASP.NET 插件。)
【问题讨论】:
标签: asp.net jquery drop-down-menu jqgrid