Ich bin neu in der Entwicklung und begann mit der Entwicklung einer einfachen asp.net-Anwendung. Ich verwende Bootstrap-Registerkarten mit einigen Asp-Etiketten und Textfeldern in jedem. Ich möchte die erste Textbox im Tab-Inhalt fokussieren, wenn ich auf diesen Tab klicke. Ich habe verschiedene Antworten gesucht, aber alle sind für Eingabefelder (exp: input type = "text"). kann keine ASP-Textbox finden. Jede Hilfe wird geschätzt. DankeFocus auf First Asp: Textfeld in jedem Bootstrap Registerkarte beim Klicken auf Registerkarte Link
Focus auf First Asp: Textfeld in jedem Bootstrap Registerkarte beim Klicken auf Registerkarte Link
Antwort
ASP.NET TextBoxes sind HTML Textfelder. Standardmäßig ist die ClientIDMode
der Steuerelemente Predictable
. Dies bedeutet, dass die ID des gerenderten HTML automatisch generiert wird.
// ASP.NET TextBox
<asp:TextBox ID="TextBox1"/>
// Rendered HTML
<input type="text" id="ContentPlaceHolder1_TextBox1_1"/>
Was Sie tun können, ist ClientIDMode="Static"
zu dem Text hinzuzufügen. Dadurch wird die gerenderte (HTML) ID der input
die gleiche wie die ID
, die Sie an die TextBox übergeben.
Sie können dies dann über JavaScript mit den Antworten, die Sie gesucht haben, ausrichten.
EDIT:
Wenn Sie die Textfelder über id nicht ausrichten möchten, können Sie wahrscheinlich nur CSS-Klassen verwenden, um sie mögen Tag:
<asp:TextBox ID="TextBox1" CssClass="default-focus" />
dann mit jQuery:
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
var target = event.target.attributes.href.value;
var $textbox = $(target + ' .default-focus');
$textbox.focus();
});
Danke #dork wird das versuchen. aber in Lösungen verwenden sie nicht ID, sie verwenden einfach eine Eingabe wie: $ ('a [data-toggle = "tab"]') on ('showed.bs.tab', Funktion (e) { var target = e.target.attributes.href.value; $ (target + 'input'). focus(); }) – Preet
@Preet, dann musst du nur 'in' $ (target + 'input') ändern 'zum richtigen Textfeld. – dork
@Preet, bearbeitete meine Antwort, um die Beispielverwendung mit Bootstraps 'showed.bs.tab' Ereignis einzubeziehen. – dork
Es gibt einen anderen Weg, dies zu erreichen, obwohl es länger ist, aber für mich gearbeitet hat. In dieser Lösung können wir suchen, welche Navbar-Registerkarte wir gerade sind und dann den Fokus auf dieses Tabs-Inhalt-Textfeld setzen, indem wir seine ID verwenden. Code:
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e)
{
var target = e.target.attributes.href.value;
if (target == "#tab1")
{
$("#<%=txttab1.ClientID%>").focus();
}
else
{
if (target == "#tab2")
{
$("#<%=txttab2.ClientID%>").focus();
}
else
{
if (target == "#tab3")
{
$("#<%=txttab3.ClientID%>").focus();
}
}
}
}
- 1. Wie Bootstrap Registerkarte mit Registerkarte klicken klicken?
- 2. Auf Bootstrap Registerkarte klicken Sie auf Inhalt innerhalb iframe
- 3. Link zu bestimmten Registerkarte Bootstrap
- 4. ausblenden Div Registerkarte klicken Sie auf die Registerkarte
- 5. Bootstrap Tab erstellen externen Link für Registerkarte
- 6. Fokus auf Tastatur Registerkarte
- 7. Wie (klicken ') auf jquery Registerkarte der derzeit aktive Registerkarte
- 8. Reactjs: Registerkarte beim Klicken auf Schaltfläche in Komponente
- 9. Registerkarte XPCOM auf der Registerkarte
- 10. Tabs Ereignis Klicken auf aktive Registerkarte
- 11. Ändern Sie die URL der Bootstrap-Registerkarte, wenn Sie mit codeigniter base_url auf die Registerkarte klicken
- 12. window.location.href - Link in neuer Registerkarte
- 13. Link in neuer Registerkarte öffnen, wenn Benutzer auf
- 14. Bootstrap Registerkarte Inhalt ausblenden
- 15. viewPager reagiert nicht auf die Registerkarte klicken
- 16. Bootstrap Nav Tab Klicken Sie auf Ereignis Works EXCEPT auf der Registerkarte Label Klicken Sie
- 17. Bootstrap Registerkarte Auswahl auf verschiedenen Seite
- 18. Twitter Bootstrap - Aktion auf Registerkarte "gezeigt" Ereignis
- 19. Asp GridView vor localhost beim Klicken auf den Link
- 20. AngularJS - nicht in der Lage Registerkarte zeigt auf dem Registerkarte klicken
- 21. Wie Chevrons zum Ausrichten auf die Mitte der Link Registerkarte
- 22. Wie reagiere Bootstrap Registerkarte
- 23. Bootstrap-Registerkarte für Schaltflächen?
- 24. Bootstrap Registerkarte aktiv
- 25. Textlink zum Ändern der Bootstrap-Registerkarte?
- 26. Neue Registerkarte öffnen und ursprüngliche Registerkarte auf neue Seite umleiten
- 27. Zurücksetzen der aktiven Bootstrap-Registerkarte beim Stapeln
- 28. AngularJS + Bootstrap erinnern aktive Registerkarte
- 29. Fehler beim Schweben auf einem Wxpython Registerkarte
- 30. Redirect auf die Registerkarte in aspx Seite
ASP.NET-Texboxen sind HTML-Eingabefelder. – dork
Werfen Sie einen Blick auf diese Antwort: https://Stackoverflow.com/a/17500718/877223 –
Mögliches Duplikat von [JavaScript-Fokus auf HTML-Formularelement setzen] (https://stackoverflow.com/questions/17500704/javascript-set -focus-to-html-form-element) –