在传递到函数后更改Javascript中的Labels值

Changing a Labels value in Javascript after being passed into a function

本文关键字:Javascript 中的 Labels 函数      更新时间:2023-09-26

我正在尝试为java脚本制作一个函数,该函数用于评估表单中的文本,并使用Valid entry或Invalid entry更新表单旁边的标签。

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

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非常陌生。

如果您有标签(必须首先使用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;                      
}                                     

然后可以通过将类似document.getElementById("reasonLabel")的东西传递到函数中来获得label

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