传递给函数后,在Javascript中更改标签值

时间:2013-08-26 02:17:09

标签: javascript function label

我正在尝试为java脚本创建一个函数来评估表单中的文本,并使用Valid条目或Invalid条目更新表单旁边的标签。

到目前为止我的代码在这里工作

function validateText(form) {       

if(form.value == '') {
  document.getElementById("reasonLabel").innerHTML =  "Invalid Entry";
  return false;
}
else{document.getElementById("reasonLabel").innerHTML =  "Invalid Entry";}

var re = /^[\w ]+$/;

if(!re.test(form.value)) {
  document.getElementById("reasonLabel").innerHTML =  "Invalid Entry";
  return false;
}

document.getElementById("reasonLabel").innerHTML =  "Valid Entry";
return true; }

但是我想使用这个函数并将它应用到我的html中的所有表单中,每个表单旁边都有一个相应的标签。

我的问题是如何在不使用.getElementByID()

的情况下传递标签并编辑其值

很抱歉,如果这是一个显而易见的问题,我对javascript很新。

2 个答案:

答案 0 :(得分:0)

您可以将标签的DOM对象(从getElementByID返回)作为参数传递,就像任何其他值一样。

答案 1 :(得分:0)

如果您有标签(必须首先使用document.getElementById()或类似的东西),您可以将其用作普通变量,如下所示:

function validateText(form, label) {       

    if(form.value == '') {            
        label.innerHTML =  "Invalid Entry";
        return false;                 
    }                                 
    else{                             
        label.innerHTML =  "Invalid Entry";
    }                                 

    var re = /^[\w ]+$/;              

    if(!re.test(form.value)) {        
        label.innerHTML =  "Invalid Entry";
        return false;                 
    }                                 

    label.innerHTML =  "Valid Entry"; 
    return true;                      
}                                     

然后可以通过将label之类的内容传递给函数来获取document.getElementById("reasonLabel")