使用 onclick JavaScript 函数添加值
Add value with onclick JavaScript function
我有一个需要跟踪销售的小系统。我有一个带有名为 incrementValue() 的 JS 函数的按钮,这个按钮执行 value++ 并且工作正常。但我需要一个函数调用,它从 JSON 中获取价格字段,并通过单击同一按钮 (incrementValueRevenue()) 添加该价格。该按钮在第一次单击时工作正常,但之后 incrementValueRevenue 函数停止。
因此对于此示例,当您单击按钮 3 次时,incrementValue() 将显示 3 而 incrementValueRevenue() 应显示 105。
这是我的:
function incrementValue() {
var value = document.getElementById('items-sold').value;
value++;
document.getElementById('items-sold').value = value;
}
function incrementValueRevenue() {
var myJSON = '{ "price":"35" }';
var myObj = JSON.parse(myJSON);
document.getElementById('total-revenue').value = myObj.price;
myObj.price += myObj.price;
}
这是我的HTML
<form>
<input type="button" onclick="incrementValue(); incrementValueRevenue();" value="+" />
</form>
提前致谢。
PS。是的,我很菜鸟,一直没能找到可行的解决方案。
您在每次 incrementValueRevenue
调用时启动 myObj
,因此该值始终被重置。
您可以在函数作用域外声明变量,这样它就被初始化一次,并有另一个值解析 JSON!
var myObj = {};
myObj.price = 0;
function incrementValueRevenue() {
var myJSON = '{ "price":"35" }';
var myObjPrice = JSON.parse(myJSON);
document.getElementById('total-revenue').value = myObj.price;
myObj.price += myObjPrice.price;
}
只在一个函数中完成,然后将总收入乘以售出的商品:
function incrementValueAndRevenue() {
var value = document.getElementById("items-sold").value;
value++;
document.getElementById("items-sold").value = value;
var myJSON = { price: 35 };
var revenue = myJSON.price * value;
document.getElementById("total-revenue").value = revenue;
}
function incrementValueRevenue() {
var myJSON = '{ "price":35 }';
var myObj = JSON.parse(myJSON);
let revenue = document.getElementById('total-revenue');
revenue.value = +revenue.value + myObj.price
}
首先你的价格应该是一个数字,稍后我们获取总收入输入并将其存储在变量中,为了将数字添加到输入值我们需要先将该输入值转换为数字(如果你不这样做如果使用“+”运算符,输出将是“35353535...”)。
我有一个需要跟踪销售的小系统。我有一个带有名为 incrementValue() 的 JS 函数的按钮,这个按钮执行 value++ 并且工作正常。但我需要一个函数调用,它从 JSON 中获取价格字段,并通过单击同一按钮 (incrementValueRevenue()) 添加该价格。该按钮在第一次单击时工作正常,但之后 incrementValueRevenue 函数停止。
因此对于此示例,当您单击按钮 3 次时,incrementValue() 将显示 3 而 incrementValueRevenue() 应显示 105。
这是我的:
function incrementValue() {
var value = document.getElementById('items-sold').value;
value++;
document.getElementById('items-sold').value = value;
}
function incrementValueRevenue() {
var myJSON = '{ "price":"35" }';
var myObj = JSON.parse(myJSON);
document.getElementById('total-revenue').value = myObj.price;
myObj.price += myObj.price;
}
这是我的HTML
<form>
<input type="button" onclick="incrementValue(); incrementValueRevenue();" value="+" />
</form>
提前致谢。
PS。是的,我很菜鸟,一直没能找到可行的解决方案。
您在每次 incrementValueRevenue
调用时启动 myObj
,因此该值始终被重置。
您可以在函数作用域外声明变量,这样它就被初始化一次,并有另一个值解析 JSON!
var myObj = {};
myObj.price = 0;
function incrementValueRevenue() {
var myJSON = '{ "price":"35" }';
var myObjPrice = JSON.parse(myJSON);
document.getElementById('total-revenue').value = myObj.price;
myObj.price += myObjPrice.price;
}
只在一个函数中完成,然后将总收入乘以售出的商品:
function incrementValueAndRevenue() {
var value = document.getElementById("items-sold").value;
value++;
document.getElementById("items-sold").value = value;
var myJSON = { price: 35 };
var revenue = myJSON.price * value;
document.getElementById("total-revenue").value = revenue;
}
function incrementValueRevenue() {
var myJSON = '{ "price":35 }';
var myObj = JSON.parse(myJSON);
let revenue = document.getElementById('total-revenue');
revenue.value = +revenue.value + myObj.price
}
首先你的价格应该是一个数字,稍后我们获取总收入输入并将其存储在变量中,为了将数字添加到输入值我们需要先将该输入值转换为数字(如果你不这样做如果使用“+”运算符,输出将是“35353535...”)。