【发布时间】:2011-04-04 07:21:32
【问题描述】:
基于文本框“自动完成”功能,用户可以在结果列表中进行选择,然后用户将选择其中一个结果并将其添加到“篮子”中,用户执行多个快速搜索并添加或删除项目从这个篮子里。
目前我用一张桌子作为“篮子”。一旦用户对篮子感到满意,用户就会将篮子提交给服务器,服务器会循环遍历篮子并更新数据库。
我正在尝试使用 jQuery 操作表格,问题是一旦回发发生,DOM 操作就会被删除。
表格如下所示。
<asp:Table ID="Basket"
runat="server"
EnableViewState="False">
<asp:TableHeaderRow TableSection="TableHeader">
<asp:TableHeaderCell>ID</asp:TableHeaderCell>
<asp:TableHeaderCell>Name</asp:TableHeaderCell>
<asp:TableHeaderCell>Quantity</asp:TableHeaderCell>
</asp:TableHeaderRow> </asp:Table>
使用 jQuery,我可以修改表格、添加行、删除它们,一切都很好。然后我有一个提交按钮
<asp:Button ID="Button1" runat="server" Text="Submit" onclick="Button1_Click" />
在按钮的 Click 事件中,我循环遍历表格的行
foreach (TableRow row in this.Basket.Rows)
{
if (row.TableSection != TableRowSection.TableBody) { continue; }
}
这就是问题所在,表被重置为仅包含 1 行的初始状态。考虑到我已经禁用了 ViewState,我认为控件会模仿回发的内容。但显然有什么东西让它重置了。
【问题讨论】:
标签: c# jquery asp.net webforms