Php html中keypress/keydown/keyup事件的计算
我在表单上有25行,供用户在java脚本中输入项目代码(输入标记)和项目数量(输入标记),计算项目数量的值,并以金额(输入标记)显示它们Php html中keypress/keydown/keyup事件的计算,php,javascript,jquery,asp.net,event-handling,Php,Javascript,Jquery,Asp.net,Event Handling,我在表单上有25行,供用户在java脚本中输入项目代码(输入标记)和项目数量(输入标记),计算项目数量的值,并以金额(输入标记)显示它们 在onKeypress/up/down中触发的事件如下 function qtycal() { for (i = 1; i <= 25; i++) { var quantity_j = document.getElementById("quantity_" + i); var price_j = documen
在onKeypress/up/down中触发的事件如下
function qtycal() {
for (i = 1; i <= 25; i++) {
var quantity_j = document.getElementById("quantity_" + i);
var price_j = document.getElementById("price_" + i);
var amount_j = document.getElementById("amount_" + i);
amount_j.value = price_j.value * quantity_j.value;
} // end of for
函数qtycal(){
对于(i=1;i
好的,您必须将函数绑定到keyup以获得实际值
如果这不起作用,您可以使用setTimeout(“qtycal”,100)对函数进行一点延迟。您的用户不会注意到这一点,这将使您的计算正常。看起来您的计算很好,但amount_j不是DOM值的参考,因此请尝试以下操作:
var quantity_j = document.getElementById("quantity_" + i).value;
var price_j = document.getElementById("price_" + i).value;
var amount_j = document.getElementById("amount_" + i).value;
amount_j = price_j * quantity_j;
document.getElementById("amount_" + i).value=amount_j;
/@请参见http://jsfiddle.net/scafa/GFsPY/
$(文档).ready(函数(){
//创建一些示例数据行
var tb=$(“”);
对于(var i=1;我认为OP没有键控keydown@user20232359723568423357842364为什么您的用户名>int64@user20232359723568423357842364html代码粘贴了看。@Atif Mohammed Ameenuddin-idk..问chuck Norris也亲爱的告诉我var quantity_j=document.getElementById(“quantity_”+i)之间的区别是什么然后访问quantity_j和var quantity_j=document.getElementById(“quantity_”+i).value并访问它quantity_j.:-)请关注problem@WaleedEhsan这对于计算来说并不重要,当你关心的只是值的时候,抓取对象看起来很奇怪。所以我现在很困惑。你是否试图让id为“amount”的输入标记的.value属性根据相应的“price”和“quantity”的.value属性进行更新?或者问题是您的代码根本就没有运行(即,如果您在函数中添加了警报(“Hello”);它是否会显示)?
var quantity_j = document.getElementById("quantity_" + i).value;
var price_j = document.getElementById("price_" + i).value;
var amount_j = document.getElementById("amount_" + i).value;
amount_j = price_j * quantity_j;
document.getElementById("amount_" + i).value=amount_j;
// @see http://jsfiddle.net/scafa/GFsPY/
$(document).ready(function(){
// creating some sample data rows
var tb = $("<tbody>");
for(var i=1;i<=10;i++){
var row = $("<tr>");
row.append($("<td>").html(i));
row.append($("<td>").html("A"+i));
row.append($("<td>").html($("<input>").attr("size",8).val(Math.round(Math.random()*10))));
row.append($("<td>").html($("<input>").attr("size",8).val(Math.round(Math.random()*100))));
row.append($("<td>").append($("<input>")));
tb.append(row);
}
$("table").append(tb);
// calculating
$("table input").bind("blur", function(){
var total = 0;
$.each($("table tbody tr"), function(i, r){
var fields = $(r).find("input");
$(fields[2]).val($(fields[0]).val() * $(fields[1]).val());
total += parseInt($(fields[2]).val());
});
$(".total").val(total);
});
});