• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[JS] Opera und IE Problem

Ok, danke. Hab es mit diesem Code mal probiert.
Dies geht auch. Vermutlich hat IE Probleme mit dem String gehabt.

var onclick = document.createAttribute('onclick');
onclick.nodeValue=function(){buddygui.addUser();};
c.setAttributeNode(onclick);
 
Hallo ich habe ein ähnliches Problem zu lösen und habe mal Euren Code genommen um ein wenig zu testen. Bei mir funktioniert alles im Netscape jedoch macht der IE Probleme.

Der Code lautet wie folgt:

HTML:
<html>
<style>
.tableDetails .innerLeft {
	background-color: #caccd7;
	text-align: right;
	vertical-align: top;
	font-weight: bold;
	padding: 4px;
	border: 1px solid #eeeeee;
}

.tableDetails .innerRight {
	background-color: #e0e2e4;
	padding: 4px;
	border: 1px solid #eeeeee;
}
</style>

<head>
<title>Malleus' TableInsertRowTest</title>
<script type="text/javascript">

var rowIndex=0;

function newRow()
{
	var newTr = document.createElement( "TR" );
	
	var newTd = document.createElement( "TD" );
	newTd.setAttribute ( 'class', 'innerLeft' );
	newTd.innerHTML = "Text" + ( ++rowIndex );
	newTr.appendChild( newTd );
	
	var newTd = document.createElement( "TD" );
	newTd.innerHTML = "<input type='text'>";
	newTr.appendChild( newTd );
	
	var oTableBody = document.getElementById( "myTable" );
	if ( oTableBody.firstChild && oTableBody.firstChild.tagName == "TBODY" )
	oTableBody = oTableBody.firstChild;
	
	oTableBody.appendChild( newTr );
}
</script>

</head>
<body>
<table id="myTable" border="1" class="tableDetails">
<tbody><tr><td>Dies ist ein ganz doller Test für den IE</td></tr></tbody>
</table>
<input type="button" id="myButton" value="neue Zeile einfügen" onclick="newRow()">
</body>

Wie man sehen kann habe ich einfach nur einen style definiert und möchte diesen an die neu generierte Spalte übergeben mit

newTd.setAttribute ( 'class', 'innerLeft' );

Dies funktioniert im Netscape. Der IE scheint das komplett zu ignorieren. Mein erster Gedanke war ganz einfach die Tabelle direkt so zu gestalten, dass das Design einfach übernommen wird in der neuen Zeile. Das funktioniert wieder nur im Netscape und der IE ignoriert auch dies.

Kann mir hier jemand einen Tipp geben woran das liegen könnte? Ich bin leider etwas ratlos

Mit freundlichen Grüßen

Jörg Hanel
 
Hi,
ich hab' mir jetzt nicht alles genau angeschaut, aber versuch' mal

Code:
newTd.className="innerLeft"

tschau

Frank
 
Hallo Malleus,

vielen lieben dank. :) Mein Problem hat sich somit gelöst.

Ich hab über die de.selfhtml.org seite die DOM-Spezifikation genommen. Hätte ich nicht machen sollen. Wer eine besser Quelle für so etwas haben möchte ist hier der Link. Document Object Model (HTML) Level 1 vom W3C. Komplett dokumentiert.

Vielen Dank noch einmal für die schnelle Hilfe.

Viele Grüße

Jörg
 
Zuletzt bearbeitet:
Zurück
Oben