我正在尝试用JavaScript编写函数,它会在放入一些文本后显示/隐藏'DIV'。
我设法写了它,但是只有当用户将'input'值设置为大于8时才能使它工作。
Html:
<input type='text' id='area' style='border: 1px solid;'></input><br>
<div id='text1' style='display:none; '>Examletext</div>
JavaScript :
$(document).ready(function() {
$("#area").keyup(function() {
if ($('#text1').is(":hidden")) {
$('#text1').show(500);
} else {
$("#text1").hide(500);
}
});
});
上面是工作脚本,但无论你输入'输入',这都适用。我想只在我将值大于8(9,10,101等)时才执行脚本
我尝试添加此功能(无效果):
if ($("#area").value > 8){}
这是我在上面评论了上述行的工作脚本 - jsfiddle
答案 0 :(得分:4)
将$("#area").value
更改为$("#area").val()
$(document).ready(function() {
$("#area").keyup(function() {
if ($("#area").val() > 8) {
if ($('#text1').is(":hidden")) {
$('#text1').show(500);]
} else {
$("#text1").hide(500);
}
}
});
});
在jQuery中,您需要使用val()
而不是value
答案 1 :(得分:4)
不是.value而是val()
你的jsfiddle应该是
if ($("#area").val().length > 0){
答案 2 :(得分:4)
试试这个:
$(document).ready(function() {
$("#area").keyup(function() {
if ($("#area").val() > 8){
if ($('#text1').is(":hidden")) {
$('#text1').show(500);
} else {
$("#text1").hide(500);
}
}
});
});
答案 3 :(得分:3)
试试这个
$(document).ready(function() {
$("#area").keyup(function() {
if ($("#area").val() > 8) {
$('#text1').toggle("slow");
}
});
});
答案 4 :(得分:0)
在比较之前将值解析为int,并使用val而不是value
if (parseInt($("#area").val()) > 8){
//write the action to be performed here
}