Ich habe ein Textfeld in einer asp.net-Webseite. Im Fall von Postback muss ich den Fokus auf das letzte Zeichen in dieser Texbox setzen. wie kann ich tun dies mit C#, ohne etwas wie jQueries mit .. DankLegen Sie den Fokus in Texbox bei letzten Char in einer asp.net-Webseite mit C#
1
A
Antwort
2
Hier ist eine Variante der Lösung in Use JavaScript to place cursor at end of text in text input element vorgeschlagen:
void btnPostBack_Click(object sender, EventArgs e)
{
txtFocus.Attributes["onfocus"] = "var value = this.value; this.value = ''; this.value = value; onfocus = null;";
txtFocus.Focus();
}
0
Ihr Code wie unten:
asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" ontextchanged="TextBox1_TextChanged" TabIndex="1"> asp:TextBox ID="TextBox2" runat="server" AutoPostBack="True" ontextchanged="TextBox2_TextChanged" TabIndex="2">
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
Session["event_controle"] = ((TextBox)sender);
}
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
Session["event_controle"] = ((TextBox)sender);
}
protected void Page_PreRender(object sender, EventArgs e)
{
try
{
if (Session["event_controle"] != null)
{
TextBox controle =(TextBox) Session["event_controle"];
controle.Focus();
}
}
catch()
{
}
}
+0
Ich habe es versucht und es hat nicht funktioniert. Kannst du bitte deine Idee erklären? – Dani
Es hat nicht funktioniert. Focus geht zurück zum Textfeld aber der Cursor ist nicht zuletzt Zeichen in diesem Textfeld – Dani
Sie müssen auf Firefox testen. Ich hatte auf IE und Chrome getestet. Ich werde sehen, ob es eine Möglichkeit gibt, das Gleiche in Firefox zu tun. – ConnorsFan
Genau !!! Ich arbeite an Firefox, ich versuchte es auf Chrom und es funktionierte, aber leider brauche ich es auf Firefox – Dani