我有一个文本框,用户在任何时候单击它都需要触发后面代码中的函数。这是JQuery:
<script type="text/javascript">
$("#txtName").click(function(){<%TextChanged();%>});
</script>
这是文本框用户界面:
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
这是TextChanged()函数背后的代码,在其中运行一些查询:
protected void TextChanged()
{
//Writing my query here!!!
}
现在,此函数在Page_Load()中而不是在txtName.Click中启动。为什么?每当用户单击txtName时,我都希望从JQ触发此TextChanged()函数!
最佳答案
您不久前问了一个与此非常类似的问题。问题是,如果没有一些粗鲁的陪审团,这将无法正常工作。每次在该文本框中更改文本时都要运行服务器端代码,这会带来不良的用户体验,因为每次更改文本时页面都会回发。因此,每次用户按下按键时,页面都会消失,重新出现,然后,如果您未设置焦点,他们将不得不再次查找文本框。
您确实需要通过JavaScript / jQuery处理在客户端执行的所有操作。您的最终目标是什么?更改文字后您想做什么?