jquery trigger alle input-Elemente mit blur auf laden
Ich bin mit blur() zu kopieren, was der Benutzer schreibt in eine form in eine Seite mit einer Zusammenfassung am Ende des Registrierungs-Assistenten. Und dies funktioniert Super.
Aber wenn ich einige preset-Feld-Werte und diese richtig sind, wird nichts kopiert, da der Benutzer wahrscheinlich nicht gonna interagiert mit, dass bestimmte eingereicht. Sie werden nur gonna klicken Sie auf weiter.
Gibt es eine Möglichkeit, trigger alle Textfelder, Texteingabefelder in Ordnung zu bringen, die diese Werte kopiert aswell?
Dies ist die Funktion die ich verwende:
/**
* Author: Thomas Kile
* Desc: Copy text from a form element into a given tag.
**
* @param string $type type of form element
* @param string $from Id of form element to copy text/value from.
* @param string $to Id of element to copy text/value into.
*/
function copyFormData(type,from,to)
{
switch (type)
{
case 'text': var copied_text = $(from).val(); break; // get input text value
case 'select': var copied_text = $(from+' option:selected').text(); break;
}
$(to).text(copied_text); // put inside this tag
}
Und das ist, wie ich bin, es zu benutzen:
$(firstName).blur(function(){ copyFormData('text',firstName,'strong#firstName'); });
$(lastName).blur(function(){ copyFormData('text',lastName,'strong#lastName'); });
Wo Stelle ich ein trigger() Veranstaltung?
Ich verwendet trigger (), die auf einer select>erste option, wenn die Liste abgerufen wurde, mit getJSON, um zu bevölkern, die nächste Liste automatisch in eine verkettete select-Sache.
Aber das war ein bisschen anders...
- nicht der direkte Weg, aber dann können Sie für alle möglichen Ereignisse wie Tastatur keydown und so weiter zu behandeln Your_copier Funktion. wenn ich nicht bekommen, zeigen Sie Ihr problem, sagen Sie mir bitte
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie trick 🙂
Oder (potenziell schneller, wenn alles gebunden ist mit jQuery):
Haben Sie versucht .trigger() ?
http://api.jquery.com/trigger/
Wie über, wobei Ihre Kopie Eingang zur Inhaltsangabe-code und legt es in eine Funktion. halten Sie die Unschärfe, wie es ist (außer dem Aufruf dieser Funktion statt inline-code) und $(document).ready() markieren Sie alle Textfelder und kopieren Sie Sie auf, wenn Sie alles enthalten. Einfacher als zu versuchen, fudge Veranstaltungen.
könnten Sie versuchen, um Sie auszulösen, programmgesteuert durch das brennen von
api.jquery.com/trigger ist dein Freund 🙂
Können Sie Balg-code, wird es Ihnen helfen,
Wenn Sie geschehen, fügen Sie den gleichen Präfix für alle IDs der Eingabe-und wollen nur verwischen diese Eingänge alle auf einmal, können Sie den wildcard-Auswahl und machen Sie es wie diese: