![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Neuer Benutzer
Registriert seit: 18.08.2005
Beiträge: 15
|
Tja, auch ich komme mal an meine Grenzen. Bin gerade am JS lernen, und wie immer verfolge ich dabei: Learning by Doing
Beschäftige mich gerade mit Ajax, und wollte das Themen bearbeiten "Online" von VBulletin nachbauen. (Siehe hier) Hab schon ein kleines Script gefunden: Klick Tja, aber bei den Umbauarbeiten komm ich nicht weiter. Wollte die Funktionen so umschreiben, das ich ganz einfach in der div als onlick-Event "showForm('id_des_divs')" angeben muss... Habe ja mehrere Divs die ich so bearbeiten müsste,nicht nur 1 Entweder das Formularfeld verschwindet nach dem abschicken nicht, oder er updatet nicht, oder oder oder.... HILFE Ich weiß das das nicht gerne gesehen ist in Foren, und normalerweise code ich solange bis es geht, aber diesmal bin ich mit meinem Latein am Ende. Kann mir jemand das Script umschreiben auf meine Anforderung, oder wenigstens einen kleinen Tip geben? Danke schon im Voraus Greez |
|
|
|
|
|
Nach oben #2 |
|
Projektleiter
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.142
|
willst du, dass das jmd. anderes für dich erledigt?
Oder möchtest du wissen/lernen, wie das geht?
__________________
Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Danke! |
|
|
|
|
|
Nach oben #3 |
|
Neuer Benutzer
Registriert seit: 18.08.2005
Beiträge: 15
|
Wenn schon, dann lernen. Ich baue nur Sachen ein die ich auch verstehe
Hab den Code mal auseinandergerissen, und nur mal versucht das Formular nach einem Doppelklick anzeigen zu lassen. Code zum abspeichern kommt dann wieder später... HTML-Code:
<script type="text/javascript"> function showForm(ele_id) { document.getElementById(ele_id).innerHTML = "<form><div><input name=\"value\" size=\"20\" value=\"Hallo\" /><input type=\"hidden\" name=\"ele_id\" value=\""+ ele_id +"\" /></div></form>"; window.onsubmit = submitForm; document.getElementById(ele_id).ondblclick = function(){return true;} } function submitForm() { var value = document.getElementsByName('ele_id')[0].value; xmlRequest('test.php',value); document.getElementById('title').ondblclick = showForm; return false; } function xmlRequest(url,ele_id) { http = false; if(window.XMLHttpRequest) { // Mozilla, Safari,... http = new XMLHttpRequest(); if(http.overrideMimeType) { http.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { // IE try { http = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if(!http) { alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen'); return false; } http.onreadystatechange = updateContent; http.open('GET', url, true); http.send(null); } function updateContent(ele_id) { if(http.readyState == 4) { if(http.status == 200) { document.getElementById('title').innerHTML = http.responseText; } else { alert('Bei dem Request ist ein Problem aufgetreten.'); } } } </script> <div id="title" ondblclick="javascript:showForm('title')"> Vor dem editieren </div> Zu meinem Problem: Der Funktion "updateContent(ele_id)" muss ich jetzt noch die gewünschte ID übergeben. Leichter gesagt als getan. Editiere ich die Zeile HTML-Code:
http.onreadystatechange = updateContent; HTML-Code:
http.onreadystatechange = updateContent('title');
Jemand ne Idee? Greez GroundZero |
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [AJAX] Eine Einführung in AJAX und XMLHttpRequest | Jay | Tutorials | 1 | 08.12.2006 16:21 |