输入有值时如何显示div?

时间:2014-07-07 02:53:19

标签: javascript jquery

我有一个输入文本和一个隐藏div。

我想在输入文本有值时显示div。

以下是演示:http://jsfiddle.net/vyc7N/181/

<label for="db">Type whatever</label>
<input type="text"name="amount"  />

<div id="yeah" style="display:none;">
 <input type="submit"   />
</div>

请有人帮助我吗?

4 个答案:

答案 0 :(得分:7)

您可以在文本框的keyup事件中编写代码,以获取在其中输入的文本长度。

$('input[name=amount]').keyup(function(){
  if($(this).val().length)
    $('#yeah').show();
  else
    $('#yeah').hide();
});

<强> Working Demo

您也可以使用.toggle()代替使用.show / .hide()

  $('input[name=amount]').keyup(function(){
     $('#yeah').toggle($(this).val().length);
  });

答案 1 :(得分:2)

$('input[name=amount]').bind('keyup change', function(){
if(!$(this).val())
    $("#yeah").css('display', 'none');
else
    $("#yeah").css('display', '');
});

答案 2 :(得分:1)

这是纯粹的javascript和DOM,没有jQuery

您可以使用onkeyup()

<label>Type whatever</label>
<input id='inptOne' type="text" name="amount" onkeyup="myFunction()" />

<div id="yeah" style="display:none">
    <input type="submit" />
</div>

<script>
//if input has some value will show the button
  window.myFunction = function() {
  //alert('it ran!');
  var hasValue = document.getElementById('inptOne').value;
  if (!!hasValue) {
    document.getElementById('yeah').style.display = 'inline';
  } else {
    document.getElementById('yeah').style.display = 'none';
  };
 };
</script>

Click Here for jsfiddle

答案 3 :(得分:1)

工作fiddle

使用以下逻辑:如果在修剪后有一些值,则显示else hide。

$('input[name=amount]').keyup(function(){
  if($.trim($(this).val())!='')
    $('#yeah').show();
  else
    $('#yeah').hide();
});