乘以两列,结果在另一列
问题描述:
我正在寻找在我的表中做一些计算。表格内容来自ajax。但是对于下面的内容,计算仅完成一行(第一行)。当我试图添加。每个函数都没有发生。乘以两列,结果在另一列
Ajax代码
$.ajax({
type: "Post",
url: '@Url.Action("function", "Controller")',
data: '{selectedValues: "' + selectedValues + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data, textStatus, jqXHR) {
var row = "";
$.each(data, function (index, item) {
row += "<tr class='odd'><td><input type='checkbox'></td><td class='product-title'>" + item.Name + "</td><td>" + item.MaxIssueLimit + "</td><td class='num-pallets'><input type='text' class='num-pallets-input' id='sparkle-num-pallets' max=" + item.MaxIssueLimit + " oninput='calculate()'></input></td><td class='times'>X</td><td class='price-per-pallet'><input type='text' class='num-pallets-input' id='cost' oninput='calculate()' value=" + item.UnitPrice + " disabled='disabled'></td><td class='equals'>=</td><td class='row-total'><input type='text' class='row-total-input' id='sparkle-row-total' disabled='disabled'></input></td></tr>";
});
$("#contacts").html(row);
},
});
的Javascript
function calculate() {
var my1 = document.getElementById('sparkle-num-pallets').value;
var my2 = document.getElementById('cost').value;
var result = document.getElementById('sparkle-row-total');
var myResult = my1 * my2;
result.value = myResult;
}
任何帮助表示赞赏。在此先感谢
答
你必须乘以
的parseInt函数之前,使用parseInt()函数解析一个字符串,并返回一个整数。
document.getElementById('sparkle-num-pallets').value;
返回一个字符串。
你不能乘两个字符串你有解析它们到整数。
function calculate() {
var my1 = document.getElementById('sparkle-num-pallets').value;
var my2 = document.getElementById('cost').value;
var result = document.getElementById('sparkle-row-total');
var myResult = parseInt(my1) * parseInt(my2); // Parse the strings
result.value = myResult;
}
function calculate() {
var my1 = document.getElementById('sparkle-num-pallets').value;
var my2 = document.getElementById('cost').value;
var result = document.getElementById('sparkle-row-total');
var myResult = parseInt(my1) * parseInt(my2); // Parse the strings
result.value = myResult;
}
<table>
<tbody>
<tr>
<td><input id="sparkle-num-pallets" ></td>
<td><input id="cost" ></td>
</tr>
</tbody>
</table>
<button onclick="calculate()">Calculate</button>
<br/>
RESULT:
<input id="sparkle-row-total">
+0
但我怎么能使其所有工作表中的行@Nadir Laskar – Muzz
+0
与显示的相同。你需要在进行任何计算之前将字符串解析为int或float,具体取决于你想要的内容。 –
[请不要把问题标题标签(https://*.com/help/tagging) – Liam