php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 09-08-2007, 13:34
Dulla_Po
 Member
Links : Onlinestatus : Dulla_Po ist offline
Registriert seit: Aug 2006
Ort: Berlin
Beiträge: 237
Dulla_Po ist zur Zeit noch ein unbeschriebenes Blatt
Standard Elemente über das DOM erstellen

Hi, ich möchte gerne in einer CMS Oberfläche Links hinzufügen lassen.
Dazu benutze ich input Felder:
PHP-Code:
<span id="spanlink1">Link URL 1:</span><br id="br1" />
<
input type="text" id="link1" name="link[]" /><br id="br11" />
<
span id="spantext1">Link Beschriftung 1:</span><br id="br111" />
<
input type="text" id="linktext1" name="linktext[]" /><br id="br1111" /> 
Nun möchte ich über ein Formular, in das der Admin eingeben kann wieviele Links er hinzufügen will, mehr input Felder erstellen.
dazu hab ich mir folgendes ausgedacht.
PHP-Code:
function addlinks(more){
var 
anzahl 0; var 1;
    
//Auslesen Wie Viele Linkfelder Schon Vorhanden Sind, Damit Fortlaufend Nummeriert Werden Kann
    
while (typeof(document.getElementById("link" i)) != "undefined"){
        
i++;
        
anzahl++;
    }
    if (
anzahl <= 10 && !isNaN(more) && more 10){ 
        for (var 
1<= morez++){
            
anzahl++;
            var 
linkdiv document.getElementById("linkdiv");
            
//Elemente Erstellen
            
var span document.createElement("span");
            var 
br document.createElement("br");
            var 
inputlink document.createElement("input");
            var 
br2 document.createElement("br");
            var 
span2 document.createElement("span");
            var 
br3 document.createElement("br");
            var 
inputlinktext document.createElement("input");
            var 
br4 document.createElement("br");
            
//Span Tag Für Link Überschrift
            
span.setAttribute("id""spanlink" anzahl);
            
//Br Tag Für Ersten Zeilenumbruch
            
br.setAttribute("id""br" anzahl);
            
//Input Tag Für Link Textfeld
            
inputlink.setAttribute("type""text");
            
inputlink.setAttribute("name""link[]");
            
inputlink.setAttribute("id""link" anzahl);
            
//Br Tag Für Zweiten Zeilenumbruch
            
br2.setAttribute("id""br" anzahl anzahl);
            
//Span Tag Für Link Beschriftung Überschrift
            
span2.setAttribute("id""spantext" anzahl);
            
//Br Tag Für Dritten Zeilenumbruch
            
br3.setAttribute("id""br" anzahl anzahl anzahl);
            
//Input Tag Für Link Beschriftung Textfeld
            
inputlinktext.setAttribute("type""text");
            
inputlinktext.setAttribute("name""linktext[]");
            
inputlinktext.setAttribute("id""linktext" anzahl);
            
//Br Tag Für Vierten Zeilenumbruch
            
br4.setAttribute("id""br" anzahl anzahl anzahl anzahl);
            
/*###########Ausführen###########*/
            
linkdiv.appendChild(span);
            
linkdiv.appendChild(br);
            
linkdiv.appendChild(inputlink);
            
linkdiv.appendChild(br2);
            
linkdiv.appendChild(span2);
            
linkdiv.appendChild(br3);
            
linkdiv.appendChild(inputlinktext);
            
linkdiv.appendChild(br4);
        }
    }

In der Variable more wird übergeben, wie viele Links er hinzufügen will. Nachdem ich da eingegeben habe werden nur leider keine weiteren input Felder angezeigt. Javascript Konsole haut aber auch keine Fehler raus. Ich finde meinen Fehler nich (weiß nichmal ob das so überhaupt geht) Vielleicht wisst ihr ja Rat!
Vielen Dank im Vorraus
Dulla_Po

Geändert von Dulla_Po (09-08-2007 um 14:33 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 12-08-2007, 06:06
highrise
 Member
Links : Onlinestatus : highrise ist offline
Registriert seit: Apr 2006
Ort: zu Hause *g*
Beiträge: 257
highrise ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Der Code sieht konsistent aus...

Vermutlich liegt dein Problem daran, dass br kein Kind von linkdiv sein sollte, sondern von dem neu hinzugefügten span...

analog gilt das für deine inputs und "links" ebenfalls....

deine appendChilds müssen also angepasst werden...

ansonsten sehe ich genauso wenig fehler, wie die fehlerkonsole *gg*...

greetz, high
__________________
Good programming is 40% experience, 20% skill, 20% RTFM, 15% caffeine, and 5% attention to detail.
When everything else fails, manipulate the data...
Beschriftungen / Großformatdruck / Werbemittel
Mit Zitat antworten
  #3 (permalink)  
Alt 12-08-2007, 12:04
ZombieChe
 Member
Links : Onlinestatus : ZombieChe ist offline
Registriert seit: Apr 2004
Ort: Hannover
Beiträge: 225
ZombieChe ist zur Zeit noch ein unbeschriebenes Blatt
ZombieChe eine Nachricht über ICQ schicken
Standard

Folgender Teil verursachte bei mir eine Endlosschleife, da typeof immer 'object zurücklieferte:
PHP-Code:
while (typeof(document.getElementById("link" i)) != "undefined"){
        
i++;
        
anzahl++;

Folgende Änderung ließ das Script wie gewünscht laufen:
PHP-Code:
while (document.getElementById("link" i)) {
        
i++;
        
anzahl++;

Wofür sind eigentlich all diese ids gut? Scheint für mich irgendwie überflüssig (erst recht bei <br>s ?!), aber ich lass mich gerne über sinn und zweck aufklären. Der Text in den <span>s fehlt natürlich auch noch (falls überhaupt gewünscht, aber wozu sonst die spans^^).

Hoffe das hilft, bei mir gings
Mit Zitat antworten
  #4 (permalink)  
Alt 12-08-2007, 14:26
Dulla_Po
 Member
Links : Onlinestatus : Dulla_Po ist offline
Registriert seit: Aug 2006
Ort: Berlin
Beiträge: 237
Dulla_Po ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ah Super Vielen Dank! Naja, ich geb den br's z.b ja alles andere id attribute die durchnumeriert sind, damit ich sie später wieder kontrolliert löschen kann. Da müsste eigentlich anstatt anzahl z als Zählvariable das ganze durchnummerieren. Wieder ein Denkfehler^^ aber jetz geändert. Weiß nicht ob das auch über ein array gehen würde, hab das mit dem DOM Knoten erstellen erst angefangen.

Geändert von Dulla_Po (13-08-2007 um 13:57 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

HeidiSQL - kostenloses MySQL front-end Editor für Windows ansehen HeidiSQL - kostenloses MySQL front-end Editor für Windows

HeidiSQL - ist ein Windows-Editor für die bekannt open Source Datenbank mySQL

10.12.2018 Berni | Kategorie: MYSQL/ Management
piwik Open-Source Webanalyse-Software ansehen piwik Open-Source Webanalyse-Software

piwik ist eine gute Alternative zu Google Analytics. Viele Features und ein modernes Erscheinungsbild mit aussagefähigen Statistiken in Echtzeit

10.12.2018 phpler | Kategorie: PHP/ Besucherzaehler
jQuery Mobile ansehen jQuery Mobile

Touch-Optimized Web Framework für Smartphones & Tablets

09.12.2018 phpler | Kategorie: AJAX/ Framework
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:24 Uhr.