Ergebnis 1 bis 4 von 4
  1. #1
    DestinysCows ist offline Grünschnabel
    registriert
    31-03-2006
    Beiträge
    4

    JavaScript + innerHTML will nicht funktionieren

    Hallo ihr!

    Ich habe eine AJAX programm wo ich vorhandene Telefonnummern aus einer Datenbank auslese und gegebenenfalls ändern möchte.

    das ganze sieht so aus:

    ich liste mir alle telnr auf die in der datenbank stehen mit einem radio button davor. value = ID der telnr in der datenbank.

    HTML-Code:
    function show_edit_numbers(result)
    {
    	var show = "<form name='edit_form'><table id=\"table\">";
    
    	for (var i = 1; i <= result[0][0]; i++) 
    	{
    		   show = show + "<tr><td><input type='radio' name='number_button' id='nr' value='"+result[i][0]+"'>" + result[i][1] + "</td></tr>";
    		}
    
    		show = show + "<tr><td><br /><input type='submit' value='edit' onClick=\"Edit_Number()\"></td></tr></table></form>";
    
    		document.getElementById("show").innerHTML = show;
    	}

  2. #2
    pit-r Guest

    AW: JavaScript + innerHTML will nicht funktionieren

    Moin!

    In Ermangelung des Kontextes (u. a. in welchem Browser Dir das passiert) mal ein Tipp: benutze keine Variablennamen, die mit ids von JS-relevanten Elementen übereinstimmen - bei Dir:

    var show = '...'
    document.getElementById("show")...

    Ahoi - Pit

  3. #3
    DestinysCows ist offline Grünschnabel
    registriert
    31-03-2006
    Beiträge
    4

    Unhappy JavaScript + innerHTML will nicht funktionieren

    Hallo ihr!

    Ich habe eine AJAX programm wo ich vorhandene Telefonnummern aus einer Datenbank auslese und gegebenenfalls ändern möchte.

    das ganze sieht so aus:

    ich liste mir alle telnr auf die in der datenbank stehen mit einem radio button davor. value = ID der telnr in der datenbank.

    HTML-Code:
    function show_edit_numbers(result)
    {
    	var show = "<form name='edit_form'><table id=\"table\">";
    
    	for (var i = 1; i <= result[0][0]; i++) 
    	{
    		   show = show + "<tr><td><input type='radio' name='number_button' id='nr'  
                       value='"+result[i][0]+"'>" + result[i][1] + "</td></tr>";
    	}
    
    	show = show + "<tr><td><br /><input type='submit' value='edit' 
            onClick=\"Edit_Number()\"></td></tr></table></form>";
    
    	document.getElementById("show").innerHTML = show;
    }
    das interessante hierbei ist das "show" die ID eines div-tags ist. schreibe ich anstatt "show" die ID eines anderen DIV tags hinein, löscht er den inhalt von "show", zeigt aber die liste mit den radio buttons in dem neuen div-tag nicht an (schreibweise ist korrekt).
    wenn ich so wie im Bsp oben "show" angebe, dann zeigt er mir den inhalt an..

    gut, jetzt klicke ich einen radio button an (zB den ersten eintrag mit der ID 4) und klicke auf den button "edit" --> jetzt wird die JS funktion "Eidt_Number()" aufgerufen:
    HTML-Code:
    function Edit_Number()
    {
    	var show = "";
    	var val = "";
    	j=document.edit_form.number_button.length; 
    
    	for (i=0; i<j; i++)
    	{
    		if(document.edit_form.number_button[i].checked) 
    		{
    			val = document.edit_form.number_button[i].value;
    		}
    	}
    
    	//val = ID of the number in the database --> make ajax request to get the MOBILE nr!!
    	alert(val);
    
    	x_getMobileNumber(val, display_edit_number);
    }
    hier hole ihc mir mal die anzahl der radio buttons heraus und gehe dann jeden radio button durch, der der gechecked ist, da schreib ich den value (ID = 4) in die variable val hinein und mache dann noch ein alert(val) ob eh alles passt (--> passt auch).

    dann rufe ich wieder eine PHP funktion mittels AJAX auf und übergebe die ID (val) und die funktion display_edit_number wird aufgerufen wenn die PHP funktion fertig ist.
    DIe PHP funktion holt sihc mittels der ID die dazugehörige Mobile Number aus der datenbank und returned sie. (zum testen returne ich einfach einen string "test").

    die funktion display_edit_number sieht folgendermaßen aus:

    HTML-Code:
    function display_edit_number(result)
    {
    	alert(result);
    		
    	document.all.show.innerHTML = result; 
    }
    zuerst wird das result (mobile number) alerted --> geht auch, also es wird der string "test" ausgegben weil ich den testhalber returnen tue.

    dann soll er mir in das div-tag show das result (sprich "test") setzen. --> geht aber nicht.
    das ist mein problem.. ich habe es auch schon mit document.getElementById("show").innerHTML probiert, schreibt mir auch nichts hinein. der vorige inhalt (radio-buttons) wird gelöscht aber "test" wird nicht reingeschrieben. auch wenn ich ein anderes div-tag verwende tut er nichts.. und ihc hab keine AHnung wieso..

    HTML schaut so aus:
    HTML-Code:
    <div id="show"></div>
    <br />
    
    <hr>
    
    <div id="edit_number"></div>
    
    <div id="headline">Current numbers:</div>
    <br />
    
    <div id="numbers"></div>
    show ist das div-tag wo ich die radio buttons und den rest anzeigen lassen will. ich habe es auch schon probiert mit document.getElementById("numbers").innerHTML .. test wird nicht angezeigt (

    Ich hoffe ihr könnt mir helfen - wäre sehr dankbar dafür!!!!

    lg,
    Nina

  4. #4
    pit-r Guest

    AW: JavaScript + innerHTML will nicht funktionieren

    Hab Deine zwei Threads mal aneinandergepappt. Was auch immer Dich zu Nr. 2 veranlaßt hat: das war nicht nötig - ein neuer Beitrag im ersten Thread wäre angemessen gewesen...

    Ahoi - Pit

Ähnliche Themen

  1. Was ist JavaScript?
    Von .holger im Forum JavaScript-FAQ
    Antworten: 4
    Letzter Beitrag: 27-11-2006, 11:00
  2. Antworten: 3
    Letzter Beitrag: 27-07-2006, 16:59
  3. Antworten: 0
    Letzter Beitrag: 06-01-2006, 14:24
  4. Javascript will nicht funktionieren
    Von ihre.dudheit im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 24-01-2005, 17:03
  5. window.popup aus flash
    Von antiheld2000 im Forum Flash
    Antworten: 6
    Letzter Beitrag: 18-07-2003, 15:26

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •