2012-11-17 35 views
1

我被問及是否可以使用某些表單數據並以HTML格式顯示。與XMLHttpRequest數據使用數學

我需要將LOADS數據/值相加並將其乘以RATE數據/值,我認爲這樣做會起作用,但它在瀏覽器中沒有顯示任何內容?

我哪裏錯了?

我是JavaScript新手,我有HTML/CSS技能。我知道jQuery可能是做這種事情的最好方式,但我不知道。

<html> 
<script> 
if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
else 
    {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
xmlhttp.open("GET","xmltest.xml",false); 
xmlhttp.send(); 
xmlDoc=xmlhttp.responseXML; 

document.write("<table border='1'>"); 
var k=xmlDoc.x[1].getElementsByTagName("LOADS"); 
var J=xmlDoc.x[1].getElementsByTagName("RATE"); 
    { 
    document.write("<tr ><td>"); 
    document.write(k*J); 
    document.write("</td><tr>"); 
    } 

document.write("</table>"); 

</script> 
</html> 



XML file 

<MULTILOAD_TICKET> 
<TICKET> 
<DATE>12/11/12</DATE> 
<ADDRESS>123 FAKE STREET</ADDRESS> 
<RATE>300</RATE> 
<LOADS>3</LOADS> 
<CUSTOMER>Columbia Ales</CUSTOMER> 
<ORDERID>BBKHJ1001</ORDERID> 
<DRIVER>BOB</DRIVER> 
<VEHICAL_REG>UJ78 JHE</VEHICAL_REG> 
<MATERIAL>SPOIL</MATERIAL> 
<SIG>URL</SIG> 
</TICKET> 

<TICKET> 
<DATE>12/11/12</DATE> 
<ADDRESS>123 FAKE STREET</ADDRESS> 
<RATE>300</RATE> 
<LOADS>6</LOADS> 
<CUSTOMER>Columbia Ales</CUSTOMER> 
<ORDERID>BBKHJ1001</ORDERID> 
<DRIVER>JACK</DRIVER> 
<VEHICAL_REG>EU78 JHD</VEHICAL_REG> 
<MATERIAL>SPOIL</MATERIAL> 
<SIG>URL</SIG> 
</TICKET> 

<TICKET> 
<DATE>15/11/12</DATE> 
<ADDRESS>123 FAKE STREET</ADDRESS> 
<RATE>300</RATE> 
<LOADS>5</LOADS> 
<CUSTOMER>Columbia Ales</CUSTOMER> 
<ORDERID>BBKHJ1001</ORDERID> 
<DRIVER>BOB</DRIVER> 
<VEHICAL_REG>UJ78 JHE</VEHICAL_REG> 
<MATERIAL>SPOIL</MATERIAL> 
<SIG>URL</SIG> 
</TICKET> 

</MULTILOAD_TICKET> 

回答

1

kJ指元素的集合,所以你不能只是它們相乘。

你需要通過收集循環,訪問他們(視或innerText瀏覽器的版本)textContent,轉換爲數字(parseIntparseFloat根據需要),它們相乘,然後將它們添加到正在運行的總。最後,最後可以輸出總數。