validate:function(section){
var elements=this.sections.$sections.eq(section).data('elements') //reference elements within this section that should be validated
var validated=true, invalidtext=["Fill the following areas:\n"]
function invalidate(el){
validated=false
invalidtext.push("- "+ (el.id || el.name))
}
for (var i=0; i<elements.length; i++){
if (/(text)/.test(elements[i].type) && elements[i].value==""){ //text and textarea elements
invalidate(elements[i])
}
else if (/(select)/.test(elements[i].type) && (elements[i].selectedIndex==-1 || elements[i].options[elements[i].selectedIndex].text=="")){ //select elements
invalidate(elements[i])
}
else if (elements[i].type==undefined && elements[i].length>0){ //radio and checkbox elements
var onechecked=false
for (var r=0; r<elements[i].length; r++){
if (elements[i][r].checked==true){
onechecked=true
break
}
}
if (!onechecked){
invalidate(elements[i][0])
}
}
}
if (!validated)
alert(invalidtext.join('\n'))
return validated
},
我想添加一个控件到这个函数来检查字段是否可见。我试图将这添加到行但没有工作;jquery javascript验证是否可见
elements[i].style.display=="none"
我隐藏表格没有输入,这是理由吗?有没有其他方法来添加此控件?
EDIT 解决方案: 元素[I] .style.display == “无”
元素[i]应该是jquery集合而不是标准HTMLElement对象才能调用“is”方法 – Stphane 2013-02-25 16:26:52