簡體   English   中英

通過類名稱計算輸入字段

[英]calculating input fields by class name

這是我的表格:

<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;
}

這是我的問題:我希望我的函數通過類名進行操作。 因此,如果我的表單看起來像這樣:

<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>

計算功能仍將起作用。 非常感謝

而不是使用id代替類,您可以使用document.getElementById('ID')。value引用它們,我認為有一個document.getElementByClass,但並非所有瀏覽器都完全支持

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

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>
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)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM