在asp.net内容页中KeyPress事件不起作用
本文关键字:KeyPress 事件 不起作用 asp net | 更新日期: 2023-09-27 17:50:32
以下是我的代码。谁能告诉我如何处理在asp.net内容页按键事件
<script type="text/javascript">
$(function () {
$('#txtdesc').keypress(function (e) {
var txt = $(this).val();
if (txt.length > 5) {
e.preventDefault();
}
});
});
<asp:TextBox ID="txtdesc" TextMode="MultiLine" runat="server" ></asp:TextBox>
$(function () {
$('#<%=txtdesc.ClientID %>').on("keypress", function (e) {
var txt = $(this).val();
if (txt.length > 5) {
alert('Hai');
e.preventDefault();
}
});
});
使用ClienID作为文本框控件,因为它是服务器控件。
Asp.net更改页面生成时的HTML响应。(对于web控件)像这样:
<input type="hidden" name="ctl00$txtdesc" id="**ctxxx_txtdesc**" />
所以,你应该使用由asp.net生成的id属性值或类属性。这样的:
$('#ctl00$txtdesc').on("keypress", (function (e) {
...
});
<asp:TextBox ID="txtdesc" TextMode="MultiLine" CssClass="**txtdesc**" runat="server" ></asp:TextBox>
$('.txtdesc').on("keypress", (function (e) {
...
});