按类名计算输入字段

时间:2013-02-16 02:24:55

标签: javascript calculator

这是我的表格:

<INPUT TYPE=TEXT NAME="input1" SIZE=10>
<INPUT TYPE=TEXT NAME="input2" SIZE=10>
<INPUT TYPE="button" VALUE="+" name="add"
onclick="CalculateIMSUB(this.form)">
<INPUT TYPE=TEXT NAME="Answer" SIZE=12>

这是我的功能:

function CalculateIMSUB(form) {
var Atext = form.input1.value;
var Btext = form.input2.value;
var val = form.val.value;
var A = eval(Atext);
var B = eval(Btext);    
var answer = A - B;
form.Answer.value = answer;
}

这是我的问题: 我希望我的函数通过classname运行。所以,如果我的表格看起来像这样:

<INPUT TYPE=TEXT classNAME="input1" name="baboon" SIZE=10>
<INPUT TYPE=TEXT classNAME="input2" name="gorilla" SIZE=10>
<INPUT TYPE="button" VALUE="+" name="add"
onclick="CalculateIMSUB(this.form)">
<INPUT TYPE=TEXT NAME="Answer" SIZE=12>

计算器功能仍然有效。 非常感谢

3 个答案:

答案 0 :(得分:0)

而不是类使用id而不是你可以使用document.getElementById('ID')来引用它们。值有一个document.getElementByClass我认为但并不是所有浏览器都完全支持

答案 1 :(得分:0)

您可以使用以下方法检索元素:

function CalculateIMSUB(form) {
var Atext = form.getElementById('input1').value;
var Btext = form.getElementById('input2').value;
var val = form.val.value;
var A = eval(Atext);
var B = eval(Btext);    
var answer = A - B;
form.Answer.value = answer;
}

以下HTML:

<INPUT TYPE=TEXT id="input1" name="baboon" SIZE=10>
<INPUT TYPE=TEXT id="input2" name="gorilla" SIZE=10>
<INPUT TYPE="button" VALUE="+" name="add"
onclick="CalculateIMSUB(this.form)">
<INPUT TYPE=TEXT NAME="Answer" SIZE=12>

答案 2 :(得分:0)

function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && oElm.all)? oElm.all :
        oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i < arrElements.length; i++){
        oElement = arrElements[i];
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }
    }
    return (arrReturnElements)
}