Benjamin: Templates laden

Beitrag lesen

Hallo Leute,

ich bin gerade dabei, ein kleines Script für JS-Templates zu schreiben.

Ich habe dazu im HTML in einem unsichtbaren DIV folgenden Code angelegt:

  
  
<script type="text/html" id="templateInput">  
	<tr>  
		<td class="t">IItitleII</td>  
		<td class="b"><input id="IIidII" value="IIvalueII" type="text"></td>		  
	</tr>  
</script>  
  
  

Mit folgendem JS möchte ich das ganze Template dann in ein DIV mit der id inputs stecken:

		  
function inputAdd = function(inputId, inputTitle, inputValue)  
{  
codeTemp = document.getElementById('templateInput').innerHTML;  
codeTemp = codeTemp.replace( /IIidII/g, inputId );  
codeTemp = codeTemp.replace( /IItitleII/g, inputTitle );  
codeTemp = codeTemp.replace( /IIvalueII/g, inputValue );  
document.getElementById( 'inputs' ).innerHTML += codeTemp;  
}	  

Das Problem an der Sache ist, dass bei einem Aufruf der Funktion zwar alles richtig ersetzt wird, er jedoch wesentliche Teile des Templates einfach weglässt.

Die Ausgabe sieht so aus:

		Test2  
		<input id="Test1" value="Test3" type="text">		  
	  
  
	  
		Test2  
		<input id="Test1" value="Test3" type="text">		

Ich kann mir schon vorstellen, dass er das "unrichtige" HTML irgendwie automatisch aussortiert, da er mit <tr> ohne <table> nichts anfangen kann. Daher suche ich nun eine gute und schönere Lösung, mit der 1. der komplette Quellcode des Templates verwendet wird und 2. der "unrichtige" HTML-Code nicht unbedingt im Quellcode auftauchen muss (Auslagern in das JS File?).

Ich würde mich sehr über Hilfe freuen,
beste Grüße, der Benjamin!