$("#second_ins").hide("fast");
$("#third_ins").hide("fast");
$('#number').change(function() {
if($("#number").val() == "2") {
$("#second_ins").show("fast");
}else if ($("#number").val() > "2") {
$("#second_ins").show("fast");
$("#third_ins").show("fast");
}else {
$("#second_ins").hide("fast");
$("#third_ins").hide("fast");
}
});
我有这段代码,基本上它正在做的是显示/隐藏一个取决于输入id =“number”中的值。
现在,我想寻求帮助,我将如何对此进行验证,如果它被隐藏,那么它将不需要值。
我的意思是,例如:输入id =“数字(值为1)所以基本上,隐藏的div / s第二和第三个ins不应该导致表单不提交。因为它们是必需的值(验证) )
有没有办法像这样检查? input_name:{ 必需:“#cat_cas_same_address:unchecked” }
但我们会检查#number的值是否未取消选中或未选中。
答案 0 :(得分:0)
根据jQuery for Hide
上的文档,我建议您检查以确定样式属性display:none;
是否存在:
匹配的元素将立即隐藏,无动画。 这大致相当于调用.css('display','none'),除了 display属性的值保存在jQuery的数据缓存中 以便稍后可以将显示恢复到其初始值。
因此,对于使用Hide
隐藏的任何所需元素,以下内容可能就足够了......
var isVisible = $("#hiddenthing").css("display") == "none";
答案 1 :(得分:0)
您可以使用$('#id').is(":hidden")
检查元素是否隐藏
如果隐藏了元素,那么如果不是false则返回true
答案 2 :(得分:0)
如果对象属性“显示”不是“阻止”而是“无”(隐藏),则可以检查对象属性 例如:
if (!$(object).css("display") == 'none')
//do something