有人问我是否可以使用一些表单数据并以 HTML 格式呈现。
我需要将 LOADS 数据/值相加并将其乘以 RATE 数据/值,我认为这会起作用,但它在我的浏览器中没有显示任何内容?
我哪里错了?
我是 JavaScript 新手,我有 HTML/CSS 技能。我知道 jQuery 可能是做这类事情的最好方法,但我不知道。
感谢 Kolink 昨天告诉我使用 textContent 或 innerText 并使用 (parseInt 或 parseFloat ) 转换为数字,但仍然难倒:-(
<html>
<body>
<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;
var i;
// array loads data from xml//
var data = [xmlDoc.x[1].getElementsByTagName("RATE").innerText, xmlDoc.x[1].getElementsByTagName("LOADS").innerText];
// Loop cycles through array converts to numbers, writes array value //
for (i=0;i<data.length;i++){
parseFloat(data[i]);
document.write("<tr ><td>");
document.write(data[i]);
document.write("</td><tr>");
}
// data array multipled//
var total = (data[0] * data[1])
{
document.write("<tr ><td>");
document.write(total);
document.write("</td><tr>");
}
</script>
</body>
</html>
xml
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>