我正在为一个单一的主题做一个任务,并且在使用javascript时遇到了一些麻烦。我希望能够根据另一个字段的值更改输入字段的值。简而言之,目的是在一个字段中输入一定数量的产品,并将其旁边的字段更改为显示购买该数量产品所需的总金额。
当我运行我的html时,输入的数量不会改变费用字段的值,我认为我的javascript一定有问题。
这是我的javascript函数的副本,以及它在其中执行的相关html。
SCRIPT:
function calcRowWash(){
var theForm = document.forms["orderform"];
var x = theForm.getElementById("quantc").value;
var quantity = 0;
if(x.value!=""){
quantity = parseInt(x.value);
}
var totalC = (quantity*0.30);
document.getElementById("totc").value = totalC;
return;
}
HTML:
<td width = "90px" align ="left"><input type = "text" id ="quantc" name = "quantWash" size = "5" tabindex = "13" onblur="calcRowWash()"/></td>
<td width = "90px" align ="left"><input type = "hidden" id ="totc" name = "washtotal" size = "5" tabindex = "14" value=""/></td>
感谢您的帮助!
答案 0 :(得分:0)
var theForm = document.forms["orderform"];
var x = theForm.getElementById("quantc").value;
这是多余的。 ID在整个文档中是唯一的,因此这就足够了:
var x = document.getElementById('quantc');
另请注意,我删除了.value
- 这就是问题所在,因为您尝试获取值的值....
答案 1 :(得分:0)
这很有效。
calcRowWash = (function(){
var x = document.getElementById("quantc");
var quantity = 0;
if (x.value!="") quantity = parseInt(x.value);
var totalC = (quantity*0.30);
document.getElementById("totc").value = totalC;
});
答案 2 :(得分:0)
尝试使用此代码
function calcRowWash() {
var x = document.forms[0]['quantc'].value;
var quantity = 0;
if (x != "") {
quantity = parseInt(x);
}
var totalC = (quantity * 0.30);
document.forms[0]['totc'].value = totalC.toString();
}
Html标记,我已经更改了文本框的隐藏类型,它适用于我。
<td width = "90px" align ="left"><input type = "text" id ="quantc" tabindex = "13" onblur="calcRowWash()"/></td>
<td width = "90px" align ="left"><input type = "text" id ="totc" tabindex = "13"/></td> </div>
答案 3 :(得分:0)
function calcRowWash(){
var theForm = document.forms["orderform"];
var x = theForm.getElementById("quantc").value;
var quantity = 0;
// Check if it is not empty
if(x.value != ""){
// Check if it is a valid number
if(x / x == 1){
quantity = parseInt(x.value);
}
}
var totalC = (quantity * 0.30);
document.getElementById("totc").value = totalC;
}
这适合我。
答案 4 :(得分:-1)
<form name="myForm" action="#" method="POST">
<input type = "text" id="quantc" name = "quantWash" size = "5" tabindex = "13" onblur="calcRowWash()"/>
<input type = "hidden" id ="totc" name = "washtotal" size = "5" tabindex = "14" value=""/>
</form>
function calcRowWash(){
var quantity = document.myForm.quantWash.value;
var price = 10.0;
document.myForm.washtotal.value = quantity * price;
}
该函数不包含解析内容。我只是想展示如何读取和设置两个输入字段的值。
答案 5 :(得分:-2)
您可以使用此JavaScript代码:
var inp = document.getElementById("inp"); // getting the Input ID
function change_value() {
inp.value = 'Your Value'; // <-- value
}
您可以添加活动:
inp.onfocus = change_value;
inp.onblur = another function with another action;
祝好运利亚姆度过了愉快的一天。