无法在javascript函数内获取HTML元素,但is获取该元素的属性
我编写了一个简单的代码,试图验证名称字段,如果它无效,我将使它旁边的标签可见,并在那里显示错误 Javascript函数是:无法在javascript函数内获取HTML元素,但is获取该元素的属性,javascript,html,Javascript,Html,我编写了一个简单的代码,试图验证名称字段,如果它无效,我将使它旁边的标签可见,并在那里显示错误 Javascript函数是: function ValidateName(id) { var error = ""; var illegalChars = /[^a-zA-Z ]/; // allow alphabets and whitespace only var labelId = ""; if(id=="fromName") labelId="lb
function ValidateName(id) {
var error = "";
var illegalChars = /[^a-zA-Z ]/; // allow alphabets and whitespace only
var labelId = "";
if(id=="fromName")
labelId="lblFromName";
else
labelId="lblToName";
if (id.value == "") {
error = "Please enter the name\n";
document.getElementById(labelId).hidden=false;
document.getElementById(labelId).innerHTML=error;
id.style.borderColor="#dd4b39";
return false;
} else if (illegalChars.test(id.value)) {
error = "Contains illegal characters\n";
alert(error);
document.getElementById(labelId).hidden=false;
document.getElementById(labelId).innerHTML=error;
id.style.borderColor="#dd4b39";
return false;
} else if ((id.value.length < 3) || (id.value.length > 35)) {
error = "Please enter atleast 3 characters\n";
alert(error);
document.getElementById(labelId).hidden=false;
document.getElementById(labelId).innerHTML=error;
id.style.borderColor="#dd4b39";
return false;
}
}
此代码不起作用。。。我试着调试了很多次,发现当我试着只提醒id时,它会显示对象HTMLInputElement;但当我尝试打印id.placeholder时,它成功地打印为Name。你能告诉我我到底做错了什么吗
谢谢试试这样的 案例1 HTML代码
<input id="my_txt" type="text" value="ABC" onchange="ValidateName(this)">
<input id="my_txt" type="text" value="ABC" onchange="ValidateName(this.id)">
案例2
HTML代码
<input id="my_txt" type="text" value="ABC" onchange="ValidateName(this)">
<input id="my_txt" type="text" value="ABC" onchange="ValidateName(this.id)">
onBlur=ValidateNamefromName
当代码需要字符串时,您正在传递fromName变量
添加引号以将其更改为:
onBlur="ValidateName('fromName')"
ValidateNameid中的id是什么?下面会调用它:检查我的答案,代码将如下onBlur=ValidateName'fromName'