<td>
のhtml内のすべての要素の合計をname = 'gross_val'という要素にしようとしています。これら<td>
の要素のすべては、動的にそれらの中に値が移入されている空でない値を合計するには要素をJavascriptまたはJQueryに入れてください
<tr><td name="gross_val" align="right" title="gross_val1" ></td></tr>
<tr><td name="gross_val" align="right" title="gross_val2" ></td></tr>
<tr><td name="gross_val" align="right" title="gross_val3" ></td></tr>
<tr><td name="gross_val" align="right" title="gross_val4" ></td></tr>
<tr><td name="gross_val" align="right" title="gross_val5" ></td></tr>
:私は<td>
要素を次のようしています。これらの<td>
要素の中には、グロスの合計値が,<tr>
であり、一部がまだ入力されていないものがあります。私はちょうど総計値で人口化されたそれらの<td>
要素を合計したいと思います。その値を別の<td>
要素に表示します。
私はこのために、以下のjQueryとJavascriptを書いた:
function computeGrossValTotal() {
var x = $("td[name='gross_val']");
var gValues = [];
$(x).each(function(index) {
// this line takes up the raw html inside of that td element
var valc = $(this).html();
// this line strips all the currency and other characters and symbols
// off the 'valc' variable and makes it in an integer format
var val = Number(WC(valc));
if (val) {
gValues.push(val);
}
});
// this line adds the values inside of gValues array
sum = Number(gValues.reduce(add, 0));
alert(sum);
}
$(document).on("keyup", function() {
computeGrossValTotal();
});
function WC(x) { return Number(x.match(/(?:\d+|\.)/g).join("")); }
function add(a, b) {return a + b;}
私が直面しています問題は、すべての<td>
要素は、それらの内、いくつかのHTMLを持っていない限り合計が警告していないということです。私は方程式から空のTD要素を取り除くことができません。誰かが、その中にある価値を持っている要素を合計する方法についてだけ教えてください。<td>
"WCは定義されていません"。その機能のコードを入力してください。 – MJH
'関数WC(x){ 戻り値(x.match(/(?:\ d + | \)/ g).join(" ")); } ' – UmarAbbasKhan
多分試してみてください: var valc = $(this).html()|| "0"; WCコード – klikas