我在列表视图中有以下布局:
<EditItemTemplate>
<tr class="<%# If(Container.DisplayIndex Mod 2 = 0, "", "a") %>">
<td style="text-align: center;width:50px;">
<asp:ImageButton ID="btnConfirmar" runat="server" CommandName="Update" ImageUrl="../images/Aceptar.ico">
</asp:ImageButton>
</td>
<td style="text-align: center;width:50px;">
<asp:ImageButton ID="btnCancelar" runat="server" CommandName="Cancel" ImageUrl="../images/Cancelar.ico">
</asp:ImageButton>
</td>
<td style="text-align: left;">
<asp:TextBox ID="txtZonaNombre" Text='<%#Convert.ToString(CType(Container.DataItem, KeyValuePair(Of Long, Mercurio.clsZonas)).Value.ZonaNombre)%>'
runat="server" Width="100%" />
<asp:RequiredFieldValidator ID="ZonaNombreValidador" ControlToValidate="txtZonaNombre"
Display="Dynamic" Text="La zona debe tener nombre" runat="server" />
</td>
</tr>
</EditItemTemplate>
我想要的是通过点击返回键(intro、enter、chr(13),无论你如何命名)来确认编辑,并在焦点位于 txtZonaNombre 文本框时通过点击 esc 键取消编辑。
我尝试使用 jquery 模拟“点击”,使用以下代码:
$("#txtZonaNombre").keypress(function (e) {
if (e.which === 13) {
$("#btnConfirmar").trigger('click');
return false;
}
});
但代码甚至没有被触发(我已经通过警报调用对其进行了检查)。
整个列表视图是用户控件的一部分(它位于 ascx 文件中),并且该控件位于母版页布局内(我指的是母版页中的 jquery 库),而列表视图位于更新面板内。
我感谢您的帮助!问候!