webForumDet fria alternativet

Lägga till ny rad

0 svar · 274 visningar · startad av Pettaaa

PettaaaMedlem sedan feb. 200712 inlägg
#1

Hej!

Jag har ett litet problem när jag ska lägga till en ny rad med hjälp av javascript. Det går att lägga till raden men precis när man ser den så försvinner den igen! vad har jag gjort för fel? Sedan visas endast xml documentet i firefox men inte i IE? Bifogar alla filer jag använder mig av, vet inte riktigt vart jag har gjort fel.

display.js

/**
 * @author Petta
 */

function displayHigh()
{
	var x=document.getElementById('table');
	var tr = x.rows[1];
	tr = tr.cells[2];
	var arvode = tr.innerHTML;
	alert("Största arvode: " + arvode);
		
}	

function insRow()
{
//var x=document.getElementById('table').insertRow(0);
//x.getElementsByTagName('tr');

var x=document.getElementById('table');
//x=x.getElementsByTagName('tr');

//var a = x[i].parseInt(cells[2]).innerHTML;

var row = 0;

for(i=1;i<x.rows.length;i++)
{
	var tr1 = x.rows[i];
	tr1 =tr1.cells[2];
	var arvode = tr1.innerHTML;
	
	if(parseInt(arvode) <= parseInt(document.updateAssistent.arvode.value))
	{
		row = i;
		break;
	}
	
	
		
	
	
}

		var tr = x.insertRow(row);
		var laggTillNamn =tr.insertCell(0);
		var laggTillEmail = tr.insertCell(1);
		var laggTillArvode = tr.insertCell(2);
		laggTillNamn.innerHTML = document.updateAssistent.namn.value;
		laggTillEmail.innerHTML = document.updateAssistent.email.value;
		laggTillArvode.innerHTML = document.updateAssistent.arvode.value;

		return false;
}

function loadXMLDoc(fname)
{
var xmlDoc;
// code for IE
if (window.ActiveXObject)
  {
  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
  }
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation 
&& document.implementation.createDocument)
  {
  xmlDoc=document.implementation.createDocument("","",null);
  }
else
  {
  alert('Your browser cannot handle this script');
  }
xmlDoc.async=false;
xmlDoc.load(fname);
return(xmlDoc);
}

function displayResult()
{
xml=loadXMLDoc("labb3.xml");
xsl=loadXMLDoc("table.xsl");
// code for IE
if (window.ActiveXObject)
  {
  ex=xml.transformNode(xsl);
  document.getElementById("example").innerHTML=ex;
  }
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation 
&& document.implementation.createDocument)
  {
  xsltProcessor=new XSLTProcessor();
  xsltProcessor.importStylesheet(xsl);
  resultDocument = xsltProcessor.transformToFragment(xml,document);
  document.getElementById("example").appendChild(resultDocument);
  }

  

}

test.html

<!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>
	<link href="style.css" rel="styleSheet" type="text/css" />
			<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<title>Laboration3</title>
		
	</head>
	<body id="example" onload="displayResult()">
	<script type="text/javascript" language="JavaScript" src="display.js"></script>		
	   
	  <form name="updateAssistent" method="get" action"#" onsubmit="javascript: insRow();">

	  <table border="0">
    <tr>
      <td class="kantlinje">Namn:</td>
      <td class="kantlinje"><input class="box" type="text" name="namn" size="30" /></td>
    </tr>
    <tr>
      <td class="kantlinje">Email:</td>
      <td class="kantlinje"><input class="box" type="text" name="email" size="30" /></td>
    </tr>
    <tr>
      <td class="kantlinje">Arvode:</td>
      <td class="kantlinje"><input class="box" type="text" name="arvode" size="30" /></td>
    </tr>
    <tr>
      <td class="kantlinje">Bekrafta:</td>
      <td class="kantlinje"><input type="submit" value="Skicka" name="submit" /></td>
    </tr>
  </table>	
	
</form>

<a href="#" onclick="javascript: displayHigh();">Hämta största arvode</a>	

		
	</body>
</html>

table.xsl

<?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/">
  <html>
  <body>
    <h2>Labbassistenter</h2>
    <table id="table" border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Namn</th>
      <th align="left">Email</th>
	  <th align="left">Arvode</th>
    </tr>
    <xsl:for-each select="Catalog/assistent">
    	<xsl:sort data-type="number" order="descending" select="arvode"/>

    <tr>
      <td><xsl:value-of select="namn"/></td>
      <td><xsl:value-of select="email"/></td>
	  <td><xsl:value-of select="arvode"/></td>
    </tr>
    </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template></xsl:stylesheet>

labb3.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="table.xsl"?>
<Catalog>
	<assistent>
		<namn>Tove</namn> 
		<arvode>4000</arvode> 
		<email>tove@tove.com</email>
	</assistent>
	<assistent> 
		<namn>Anders</namn> 
		<arvode>5000</arvode> 
		<email>anders@anders.com</email>
	</assistent> 
	<assistent> 
		<namn>Markus</namn> 
		<arvode>200</arvode> 
		<email>markus@markus.com</email>
	</assistent> 
</Catalog>

Blev lite många filer men jag vet inte riktigt var jag har gjort fel! ;)

Tack på förhand!

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)