即时通讯工作在一个简单的形式,我试图验证字段, 与下面的代码我能够验证该字段,并添加一个消息,如果该字段为空。 }验证表格
Q
验证表格
0
A
回答
1
改变你的JavaScript代码如下:
function validation(id) {
var value = document.getElementById(id).value;
if (value === "" || value == null) {
document.getElementById('Err' + id).innerHTML = "- Field Required";
document.getElementById(id).classList.add('class');
var label = findLabel(document.getElementById('Name'));
label.classList.add('class');
} else {
document.getElementById('Err' + id).innerHTML = "";
document.getElementById(id).classList.remove('class');
var label = findLabel(document.getElementById('Name'));
label.classList.remove('class');
}
}
function findLabel(el) {
var idVal = el.id;
labels = document.getElementsByTagName('label');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor == idVal)
return labels[i];
}
}
.class
{
background: #f97d7d;
color: #ff0000;
border: 1px solid #ff0000 !important;
}
<label class="" for="Name">* Name <span class="error" id="ErrName"></span></label>
<input type="text" name="Name" id="Name" onblur="validation('Name')">
我添加了一个功能findLable
得到该输入的标签,使用,添加错误类到标签。
+0
你已经定义了'findLable',但叫做'findLableForControl'。请更正已定义/已调用方法的名称。 –
+0
对不起,修正了上述错误。感谢您指出:) – gaganshera
0
span被定义为类“错误”,但您尚未定义该类。
1
首先您需要扫描的页面标签:
var labels = document.getElementsByTagName('LABEL');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor != '') {
var elem = document.getElementById(labels[i].htmlFor);
if (elem)
elem.label = labels[i];
}
}
然后,你可以简单地使用在IF-ELSE条件下,
document.getElementById(id).label.classList.add('red-text');
和
document.getElementById(id).label.classList.remove('red-text');
我还为文本添加了CSS类为红色。
.red-text {
color: #ff0000;
}
最终代码:
function validation(id) {
var labels = document.getElementsByTagName('LABEL');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor != '') {
var elem = document.getElementById(labels[i].htmlFor);
if (elem)
elem.label = labels[i];
}
}
var value = document.getElementById(id).value;
if (value === "" || value == null) {
document.getElementById('Err' + id).innerHTML = "- Field Required";
document.getElementById(id).classList.add('class');
document.getElementById(id).label.classList.add('red-text');
} else {
document.getElementById('Err' + id).innerHTML = "";
document.getElementById(id).classList.remove('class');
document.getElementById(id).label.classList.remove('red-text');
}
}
.class {
background: #f97d7d;
color: #ff0000;
border: 1px solid #ff0000 !important;
}
.red-text {
color: #ff0000;
}
<label for="Name">* Name <span class="error" id="ErrName"></span></label>
<input type="text" name="Name" id="Name" onblur="validation('Name')">
0
我觉得这是更好地结合模糊和输入事件
代码:
Name.addEventListener('blur', function(){
if (!Name.value){
ErrName.innerHTML="Field Required";
this.classList.add('class');
ErrName.parentNode.style.color="red";
}
});
Name.addEventListener('input',function(){
if (Name.value.length && ErrName.innerHTML=="Field Required"){
ErrName.innerHTML="";
this.classList.remove('class');
ErrName.parentNode.style.color="black";
}
});
相关问题
- 1. 验证Excel表格
- 2. 古代表格验证
- 3. jquery验证器HTML表格
- 4. Excel表格验证框架
- 5. Rails部分表格验证
- 6. 表格字段验证
- 7. 使用angularjs验证表格
- 8. 角度验证表格
- 9. Django表格字段验证
- 10. 按功能验证表格
- 11. 如何验证表格
- 12. ASP.NET MVC验证表格
- 13. 试图验证表格
- 14. 在流星验证表格
- 15. 逻辑验证Symfony表格
- 16. 验证后提交表格
- 17. Zend表格验证器foreach
- 18. 验证简单表格
- 19. 表格发送验证
- 20. Django验证模型表格
- 21. 验证联系表格
- 22. Javascript无法验证表格
- 23. 联系表格7验证
- 24. Javascript数字表格验证
- 25. Php ereg验证表格
- 26. jQuery AJAX验证表格
- 27. jQuery AJAX验证表格
- 28. 使用Javascript验证表格
- 29. JQuery不验证struts2表格
- 30. Symfony 2验证表格
可能重复[什么是HTML中的id属性的有效值?](http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute -in-html) – Pedro