mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 19.03.2024 05:08 Benutzername: Passwort: Auto-Login

Thema: JavaScript Problemchen im IE vom 07.03.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> JavaScript Problemchen im IE
Autor Nachricht
eViLaSh
Threadersteller

Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht: Männlich
Verfasst Mi 07.03.2007 09:06
Titel

JavaScript Problemchen im IE

Antworten mit Zitat Zum Seitenanfang

Huhu,

ich hab mir aus dem vanilla-js ne kleine funktion geklaut, bzw. umgeschrieben...und zwar sieht die so aus:

Code:
function AddLabelValuePair(id) {
var Container = document.getElementById(id);
if (Container) {

var Label = document.createElement("tr");
var Label2 = document.createElement("td");
var Label2Input = document.createTextNode("E-Mail:");
var Label3 = document.createElement("td");
var Label3Input = document.createElement("input");
Label2.className = "text";
Label3.className = "text";
Label3Input.type = "text";
Label3Input.name = "mail[]";
Label3Input.className = "loginfeld";

// Add the items to the page
Label.appendChild(Label2);
Label2.appendChild(Label2Input);
Label.appendChild(Label3);
Label3.appendChild(Label3Input);
Container.appendChild(Label);

}
}


leider funktioniert das nur im Firefox, nicht aber im IE, kann mir aber nicht erklären wieso?!


die funktion wird dann wie folgt aufgerufen:

Code:
<table width="100%" border="0" cellspacing="0" cellpadding="4" id="1">
<tr>
<td class="text" colspan="2"><b>Senden Sie eine Einladung für Ihren Konferenzraum an folgende E-Mail-Adressen:</b></td>
<tr>
<td class="text">E-Mail:</td>
<td class="text"><input type="text" name="mail[]" class="loginfeld"></td>
</tr>
</table>
<a href="javascript:AddLabelValuePair('1');">weitere E-Mail hinzufügen</a>

er soll mir also eine weitere zeile schreiben mit dem email-input-feld....
er gibt mir aber nichts aus, also auch keine fehlermeldung.



die eigtl. Vanilla funktion funktioniert auch im IE.

hier das originial vanilla-script:
Code:
function AddLabelValuePair() {
   var Counter = document.getElementById('LabelValuePairCount');
   var Container = document.getElementById('CustomInfo');
   if (Counter && Container) {
      Counter.value++;

      var Label = document.createElement("li");
      var LabelInput = document.createElement("input");
      LabelInput.type = "text";
      LabelInput.name = "Label"+Counter.value;
      LabelInput.maxLength = "20";
      LabelInput.className = "LVLabelInput";
      
      // Create the value container      
      var Value = document.createElement("li");
      var ValueInput = document.createElement("input");
      ValueInput.type = "text";
      ValueInput.name = "Value"+Counter.value;
      ValueInput.maxLength = "200";
      ValueInput.className = "LVValueInput";
      
      // Add the items to the page
      Label.appendChild(LabelInput);
      Value.appendChild(ValueInput);
      Container.appendChild(Label);
      Container.appendChild(Value);
   }
}
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
m
Moderator

Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 07.03.2007 15:14
Titel

Antworten mit Zitat Zum Seitenanfang

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>...</title>
<script type="text/javascript">
<!--
function clone_this(objButton)
{
    var tmpNode = objButton.form.elements[0].parentNode.cloneNode(true);
    tmpNode.getElementsByTagName('input')[1].style.display = 'inline';
    var tmpElm = document.createElement('input');
    tmpElm.type = objButton.form.elements[0].type;
    tmpElm.name = objButton.form.elements[0].name;
    tmpNode.replaceChild(tmpElm,tmpNode.getElementsByTagName('input')[0]);
    objButton.form.insertBefore(tmpNode,objButton);
}

function remove_this(obj)
{
  obj.form.removeChild(obj.parentNode);
}
//-->
</script>
</head>
<body>
<form>
 <div>
  <label>E-Mail: </label><input size="20" name="textfeldname[]" type="text" />
  <input type="button" onclick="remove_this(this)" value="l&ouml;schen" style="display:none">
 </div>
 <input value="noch eins" onclick="clone_this(this)" type="button" />
</form>
</body>
</html>
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Raumwurm

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 07.03.2007 15:19
Titel

Antworten mit Zitat Zum Seitenanfang

genau, oder halt so - damit der ie da wat damit anfangen kann:
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
<script type="text/javascript">
function AddLabelValuePair(id) {
var Container = document.getElementById(id);
if (Container) {

   var Label = document.createElement("tr");
   var Label2 = document.createElement("td");
   var Label2Input = document.createTextNode("E-Mail:");
   var Label3 = document.createElement("td");
   var Label3Input = document.createElement("input");
   Label2.className = "text";
   Label3.className = "text";
   Label3Input.type = "text";
   Label3Input.name = "mail[]";
   Label3Input.className = "loginfeld";
   
   // Add the items to the page
   Label.appendChild(Label2);
   Label2.appendChild(Label2Input);
   Label.appendChild(Label3);
   Label3.appendChild(Label3Input);
   Container.lastChild.appendChild(Label);

}
}
</script>
</head>

<body>
<table width="100%" border="0" cellspacing="0" cellpadding="4" id="dropzone">
   <tr>
      <td class="text" colspan="2"><b>Senden Sie eine Einladung für Ihren Konferenzraum an folgende E-Mail-Adressen:</b></td>
   </tr>
   <tr>
      <td class="text">E-Mail:</td>
      <td class="text"><input type="text" name="mail[]" class="loginfeld"></td>
   </tr>
</table>
<a href="javascript:AddLabelValuePair('dropzone');">weitere E-Mail hinzufügen</a></body>
</html>
  View user's profile Private Nachricht senden
eViLaSh
Threadersteller

Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht: Männlich
Verfasst Mi 07.03.2007 15:53
Titel

Antworten mit Zitat Zum Seitenanfang

@raumwurm: das gayt nicht:

Zitat:
Fehler: uncaught exception: [Exception... "Node cannot be inserted at the specified point in the hierarchy" code: "3" nsresult: "0x80530003 (NS_ERROR_DOM_HIERARCHY_REQUEST_ERR)" location: "http://xxx.de/interface/konferenz.php Line: 67"]



edit: gayt doch, vielen dank Lächel
wieso muss denn dieser teil hier rein?
Zitat:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


??? bitte um erklärung, bin javasript-noob



@m: sieht ganz gut aus, werde ich morgen mal testen, hab jetz keine zeit mehr.


Zuletzt bearbeitet von eViLaSh am Mi 07.03.2007 15:57, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Raumwurm

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 07.03.2007 17:37
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist nur ein Doctype hat nix mit dem Script zu tun.
  View user's profile Private Nachricht senden
eViLaSh
Threadersteller

Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht: Männlich
Verfasst Do 08.03.2007 08:32
Titel

Antworten mit Zitat Zum Seitenanfang

das war mir klar, nur funktioniert das script nicht, wenn ich den Doctype weglasse...warum ist das so?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Raumwurm

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 08.03.2007 09:04
Titel

Antworten mit Zitat Zum Seitenanfang

Achso, hmm k.A., etliche Browser werden ohne doctype
in den Quirksmodus katapultiert und dann machen die ja
sowieso was sie wollen. Diese Tabelle ist dazu ganz
interessant: doctypeswitch
  View user's profile Private Nachricht senden
 
Ähnliche Themen Kleines Problemchen bei Bildlaufleiste mit Javascript
Javascript Problemchen Dropdown-Auswahl verändern
css problemchen
attachmovie problemchen
CSS / HTML Problemchen
php // flash problemchen
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.