我正在尝试在单个警报消息中实现显示多个验证错误消息的功能。
我有三个文本字段,检查用户是否在该文本字段中输入了值。 如果用户没有输入任何值并尝试提交表单,我必须向用户显示三个字段是必填字段。
一段代码如下:
function validateInput(ele, note, Name)
{
var val = ele.value;
if (val == '')
{
note = note +Name+"element can not be Empty; \n";
return false;
}
return true;
}
function validateForm() {
var note = "";
var ele1 = validateInput(document.getElementById('input1'), note, 'From');
var ele2 = validateInput(document.getElementById('input2'), note, 'To');
var ele3 = validateInput(document.getElementById('input3'), note, 'CC');
alert(note);
return (ele1 && ele2 && ele3);
}
答案 0 :(得分:0)
您可以使用对象通过引用传递值,但为此没有必要。试试这个:
function validateInput(ele, Name)
{
var val = ele.value;
return val == '' ? note +Name+"element can not be Empty; \n" : "";
}
function validateForm() {
var note = "";
note += validateInput(document.getElementById('input1'), 'From');
note += validateInput(document.getElementById('input2'), 'To');
note += validateInput(document.getElementById('input3'), 'CC');
var isValid = note == "";
if( !isValid )
alert(note);
return isValid;
}
答案 1 :(得分:0)
字符串不是对String对象实例的引用。
您应该在父上下文中声明note
var:
var note = '';
function validateInput(ele, Name)
{
var val = ele.value;
if (val == '')
{
note = note +Name+"element can not be Empty; \n";
return false;
}
return true;
}
function validateForm() {
note = "";
var ele1 = validateInput(document.getElementById('input1'), 'From');
var ele2 = validateInput(document.getElementById('input2'), 'To');
var ele3 = validateInput(document.getElementById('input3'), 'CC');
alert(note);
return (ele1 && ele2 && ele3);
}