我如何根据值来判断/验证表单?

时间:2011-10-12 11:03:36

标签: jquery

$("#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的值是否未取消选中或未选中。

3 个答案:

答案 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