문자를 입력하는 동안 레이블 값을 텍스트 상자와 동일하게 변경하려고합니다. 그래서 여기에 질문이? 어떻게 다시 게시 후 textbox 커서를 유지할 수 있습니까? 예를 들어 'ab'입력하십시오. 텍스트 박스의 커서 위치는 'B'여기포스트 백 후에 텍스트 상자 커서 유지
는 마지막 문자에 남아 내 코딩되어
<script language="javascript" type="text/javascript">
function RefreshUpdatePanel() {
__doPostBack('<%= TextBox1.ClientID %>', '');
};
</script>
<asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<br />
<br />
<asp:TextBox ID="TextBox1" runat="server" onkeyup="RefreshUpdatePanel();"
ontextchanged="TextBox1_TextChanged"></asp:TextBox>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="TextBox1" />
</Triggers>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>
내 백엔드 코드
protected void Page_Load(object sender, EventArgs e)
{
//--If post back is txtSearach , then do search function--
if (Page.Request.Form["__EVENTTARGET"] == TextBox1.ClientID)
{
this.Label1.Text = this.TextBox1.Text;
}
}
나는 또한 textbox1.focus를 넣어 시도
() 다시 게시 이벤트가 발생하지만 텍스트 상자 커서 posittion은 첫 번째 문자에서 시작됩니다. (
당신의 TextChanged에 다시 게시 할 이유 궁금 해요. 자바 스크립트/jQuery를 사용하여 왕복없이 레이블을 업데이트 할 수 있습니다. –
실제로 나는 즉시 검색 기능을 원한다. 사용자가 검색 텍스트 상자에 키를 입력하면 그리드 뷰도 업데이트됩니다. Jquery를 사용하여 그리드 뷰를 리바 인딩하는 방법을 모르겠다. ( – user998405
jQuery를 살펴볼 때 약간의 시간을 할애했다. –