2013-01-16 34 views
0

如何根据表单输入值使div显示或隐藏。特别是如果它的价值是积极的。我希望它显示一个div。否则,我希望它显示另一个div。如果(#formID)的值大于100000,则显示此Div Div

下面是我想要的更复杂的东西 。如果form1大于10,000且form2小于零。显示第一个div(如果两者都满足)。如果符合表格1的条件并且不符合表格2(表格2是一个正数),则显示该第二个div。如果其他(既不符合,也不符合表格1(9000),但表格2是(负数) 。显示此第三格

回答

1

假设您有以下内容的div:

<div class="show_when_more"> 
    Foo 
    </div> 

    <div class="show_when_less"> 
    Bar 
    </div> 

而你要在接下来的输入是看:

<input type="text" class="to_watch"/> 

然后下面的JavaScript会为你做它(你需要的jQuery这个工作):

$('input.to_watch').on('change', function(){ 
     if($(this).val()>=1000){ 
      $('div.show_when_more').css('display', 'block'); 
      $('div.show_when_less').css('display', 'none'); 
     } else { 
      $('div.show_when_more').css('display', 'none'); 
      $('div.show_when_less').css('display', 'block'); 
     } 
    }); 

这也将与任何其他类型的选择工作(由ID例如,通过元素类型,等)

+0

真棒。你是一个拯救生命的人。我欠你。如果我想要看两个条件,我该怎么办?这是我的尝试。但我显然不是很好。它有错误,http://jsfiddle.net/7aNwP/15/ – user1855130

+0

你觉得这个jsfiddle完全可以做什么? –

+0

哈哈现在什么都没有。因为我不知道js。我坚持HTML和CSS。但是我希望它看到表单1是否大于10000,并且表单2大于零。然后功能是一样的。但是我想设置两个条件 – user1855130

0

这里的逻辑正好适用于您的项目

var value = document.getElementById('input').value; 

if(value === 1000) { 
//show the first div 
} 
else { 
//show the second div 
} 
0

如果你想看看它是否是积极的,你可以检查它是否> = 0(或1,取决于你要去的)。

在对数字进行检查时,首先对它进行parseint()是个好主意。

扔在一个if语句:

if (value >= 0) { then show one div } else { show a different div } 
0

我认为你正在寻找的东西象下面这样:

$(function() { 
    if(isNaN(parseInt($("#in").val()))) 
    { 
    $("#divtobeshown").show(); 
    } 
    else { 
    $("#divtobehidden").hide(); 
    } 
}); 


<form id="sform"> 
    <input value="" id="in" > 
</form> 

一个简单的例子就JSFIDDLE

相关问题