フォーム データを使用して HTML で表示できるかどうか尋ねられました。
LOADS データ/値を合計し、RATE データ/値で乗算する必要があります。これでうまくいくと思いましたが、ブラウザに何も表示されませんか?
どこが間違っていますか?
JavaScript は初めてで、HTML/CSS のスキルはあります。jQueryがおそらくこの種のことを行うための最良の方法であることは知っていますが、それはわかりません。
textContent または innerText を使用し、 (parseInt または parseFloat ) を使用して数値に変換するように言われた昨日の Kolink に感謝しますが、それでも困惑しています :-(
<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>