ERLEDIGT
NEIN
NEIN
ANTWORTEN
15
15
ZUGRIFFE
4581
4581
EMPFEHLEN
-
07.03.09 01:48 #1
- Registriert seit
- Dec 2004
- Beiträge
- 71
Ich suche eine Möglichkeit mit jQuery dynamisch weitere Inputfelder nachzuladen bzw. diese auch wieder zu löschen.
So ähnlich wie hier:
http://mohamedshaiful.googlepages.co...emove_form.htm
Nur eben dass, die Felder bereits mit Daten aus der DB gefüllt sind, wozu ich wohl Ajax benötige.
Habe auch schonmal folgenden Code probiert:
Funktioniert soweit ganz gut. Das Problem ist nur die benötigte ID. Um später beim Speichern des Formulars alle Werte zuordnen zu können, würde ich gerne den Inputfeldern IDs vergeben.HTML-Code:<a class="ajax" href="#">weiteres Feld hinzufügen</a> <div id="quote"></div> $('a.ajax').click(function() { $('#quote').load('ajax.php'); $(location).attr("hash", $(this).attr("hash")); return false; });
Wie realisiere ich das am besten?
Was kann ich am bisherigne Code verbessern?
-
07.03.09 02:49 #2
- Registriert seit
- Dec 2007
- Ort
- Bremen
- Beiträge
- 3.418
Hi,
kannst Du mal Deine ajax.php zeigen? Ich verstehe irgendwie nicht ganz, was genau Du da vorhast.
LGDa es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
-
07.03.09 10:02 #3
- Registriert seit
- Dec 2004
- Beiträge
- 71
klar kein Problem
Ich möchte jetzt nur, dass die ID des <div> und die ID des <select> ansteigend sind. Also beim ersten mal klicken 2, dann 3,...PHP-Code:echo '<div class="kategorieauswahl" id="1"><label>Kategorie:</label>
<select name="p_kategorie" id="p_kategorie">
<option value=""></option>';
$kategorien = Database::queryArray("SELECT id, name FROM _category;");
foreach ($kategorien as $wert) {
echo '<option value="$wert[id]">$wert[name]</option>';
}
echo '</select></div>';
-
Hi,
zunächst würde ich mit der jQuery-Methode ajax arbeiten. Diese lässt es zu, nach erfolgreichem Request eine Callback-Funktion aufrufen. Dort kannst du eine globale Variable inkrementieren. Diese Variable wird dem Request als Parameter mitgegeben und dient auf der Serverseite als ID.
Auf der Clientseite könnte es wie folgt aussehen:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
<html> <head> <title>www.tutorials.de</title> <meta name="author" content="Quaese"> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <script src="jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> <!-- var intCountID = 0; $(document).ready(function(){ $('a.ajax').click(function(){ $.ajax({ type: "POST", url: "ajax.php", data: {'id': intCountID}, success: function(msg){ $('#quote').append(msg); $(location).attr("hash", $(this).attr("hash")); intCountID++; } }); }); }); //--> </script> </head> <body> <a class="ajax" href="#">weiteres Feld hinzufügen</a> <div id="quote"></div> </body> </html>
Auf der Serverseite verarbeitest du die Post-Variable 'id' - Beispiel:
Code :1
echo("<div id=\"id_".$_POST['id']."\">".$_POST['id']."</div>\n");
Es sei noch angemerkt, dass IDs mit einem Buchstaben beginnen müssen.
Ciao
QuaeseVielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
----
Der "Fortsetzungsroman" auf www.leuteforum.de
New kind to realize large scalable projects with jQuery: jQuery SDK
-
12.03.09 17:45 #5
- Registriert seit
- Dec 2004
- Beiträge
- 71
ok danke soweit
Habe noch ein anderes Problem.
Und zwar möchte ich etwas erscheinen lassen und das Feld dann den Focus geben, damit man gleich schreiben kann.
Klappt aber nicht. Was mache ich falsch?
$('a.test').click(function() {
$('#suche').fadeIn(300);
$("input.focus:last").focus();
});
-
12.03.09 18:29 #6
- Registriert seit
- Dec 2007
- Ort
- Bremen
- Beiträge
- 3.418
Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
-
12.03.09 18:44 #7
- Registriert seit
- Dec 2004
- Beiträge
- 71
Jo mein input-Feld hat die Klasse "focus".
Fehlerkonsole sagt nichts.
Wenn ich auf den Link klicke erscheint das div mit der id "suche". Darin befindet sich das Input feld.
Wenn es erscheint hat es ganz kurz den Focus wie es aussieht, behält ihn aber leider nicht, obwohl danach ja nichts mehr ausgeführt wird.
-
12.03.09 18:48 #8
- Registriert seit
- Dec 2007
- Ort
- Bremen
- Beiträge
- 3.418
Hi,
und welches Element bekommt stattdessen den Focus?
LGDa es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
-
12.03.09 18:55 #9
- Registriert seit
- Dec 2004
- Beiträge
- 71
gute Frage

keines würd ich sagen. Wenn ich aber ein weiteres mal Tab drücke bekommt das Input feld den Focus.
-
12.03.09 19:09 #10
- Registriert seit
- Dec 2007
- Ort
- Bremen
- Beiträge
- 3.418
Du könntest mal testen, welches Feld überhaupt ausgewählt wird, indem Du ihm z.B. probehalber einen farbigen Rahmen verpasst.
LGDa es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
-
12.03.09 19:36 #11
- Registriert seit
- Dec 2004
- Beiträge
- 71
OK, es wird das richtige ausgewählt.
Dann bekommts vermutlich auch den Focus. Nur verschwindet der wieder.
Hab das Ganze mit hover statt click getestet, nun gehts.
Was könnte ich machen, dass es mit click klappt?
-
Hi,
tritt das Verhalten bei jedem zugefügten Textfeld auf oder nur beim ersten?
Du könntest folgendes versuchen:
Code :1 2 3 4 5 6
$('a.test').click(function() { $('#suche').fadeIn(300, function(){ $("input.focus:last").focus(); }); $("input.focus:last").focus(); });
Da der Fokus wie von dir beschrieben wieder vom Feld genommen wird, könnte es mit dem Faden zusammenhängen. Durch den Aufruf einer Callback-Funktion setzt du einfach den Fokus für den Fall, dass gefadet wird, nachdem der Einblendvorgang abgeschlossen wurde.
Vielleicht hilft dir das weiter.
Ciao
QuaeseVielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
----
Der "Fortsetzungsroman" auf www.leuteforum.de
New kind to realize large scalable projects with jQuery: jQuery SDK
-
12.03.09 20:05 #13
- Registriert seit
- Dec 2007
- Ort
- Bremen
- Beiträge
- 3.418
Seltsam... bei mir blinkt der Cursor auch nur kurz auf, das Feld hat aber dennoch den Focus (tipp einfach mal was
).
LG
Edit: mit Quaeses Vorschlag funktioniert es.Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
-
12.03.09 21:00 #14
- Registriert seit
- Dec 2004
- Beiträge
- 71
-
Hi,
wie sieht denn dein bisheriger Versuch mit facebox aus? Poste doch bitte den aufs Wesentliche reduzierten Code.
Ciao
QuaeseVielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
----
Der "Fortsetzungsroman" auf www.leuteforum.de
New kind to realize large scalable projects with jQuery: jQuery SDK
Ähnliche Themen
-
Frage zu Jquery UI Dialogbox. Nur Inputfelder des Typs hidden funktionieren
Von xtramen01 im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 31.08.10, 12:41 -
Dynamisch erstellte Inputfelder werden beim POST nicht übergeben
Von anachronist im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 21.10.09, 16:50 -
Hilfe bei Abfrage dynamisch erzeugter inputfelder
Von Hunting4u im Forum Javascript & AjaxAntworten: 14Letzter Beitrag: 23.08.09, 15:07 -
Textareas hinzufügen entfernen,...
Von JesusFreak777 im Forum PHPAntworten: 5Letzter Beitrag: 21.08.08, 01:03 -
[SWT] TreeItem hinzufügen/entfernen
Von redX im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 10.04.06, 14:15





Zitieren


Login





