我有一个输入文本和一个隐藏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>
请有人帮助我吗?
答案 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)
您可以使用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>
答案 3 :(得分:1)
工作fiddle
使用以下逻辑:如果在修剪后有一些值,则显示else hide。
$('input[name=amount]').keyup(function(){
if($.trim($(this).val())!='')
$('#yeah').show();
else
$('#yeah').hide();
});