1

フォーム データを使用して HTML で表示できるかどうか尋ねられました。

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>
4

1 に答える 1

1

k要素のコレクションをJ参照するため、単純に乗算することはできません。

コレクションをループし、それらにアクセスしtextContent(またはinnerTextブラウザーのバージョンに応じて)、数値に変換し (parseIntまたはparseFloat必要に応じて)、それらを乗算し、現在の合計に追加する必要があります。最後に、合計を出力できます。

于 2012-11-17T16:21:54.570 に答える