jQuery输入值不起作用

时间:2013-08-16 07:27:49

标签: javascript jquery

已经找到了解决方法,但没有找到解决方案。

$(document).ready(function() {
    if ($("input").value()) {
        $("h1").hide();
    }
}

所以这似乎不起作用($("h1").hide()只是一个占位符动作......那部分不重要,问题是if语句不起作用。)

页面上有一个表单<input type=text>。我想这样做,以便在任何时候,如果输入框中有任何文本,则应用某种状态。如果输入框返回空,则删除状态。

$(document).ready函数中有很多其他函数由于清晰而省略了...但就if语句所在的范围而言,它直接位于document.ready函数内部。附:表单是动态显示和隐藏的,但它是硬编码的 - 它不是动态创建的。

我有这个if语句的位置有什么问题?

5 个答案:

答案 0 :(得分:7)

尝试.val()喜欢

$(document).ready(function(){
    if ($("input").val()) {
        $("h1").hide();
    }
});

最好使用nameidclass names作为选择器。因为input可以是任意数字且它们还包含{ {1}},checkboxesradio buttons类型

答案 1 :(得分:1)

在jQuery中,您必须使用.val()方法,而不是.value()。您的支票应如下:

if ($("input").val()) {
 $("h1").hide();
}

答案 2 :(得分:1)

.value()无效。您应该使用.val()代替.value()。希望它会起作用吗?

答案 3 :(得分:1)

.value()中的JS不同,.val()中的JQuery

$(document).ready(function() {
    if ($("input").value()) {
      $("h1").hide();
    }
});

您应该使用keyup了解何时在textbox

中添加/删除密钥
$(document).ready(function() {
    $("#input_data").keyup(function() {
        var dInput = $(this).val();
        alert(dInput);

    });
});

<强> DEMO

注意:由于输入可以是任意数字和复选框,因此单选按钮和按钮类型都包含在HTML input标记中,您应该使用nameidclass名称为**selectors**

input[type=text]

或者,限制表格内的文字输入

form input[type=text]

或者,为了进一步限制某种形式,假设它具有id myForm

#myForm input[type=text]

如果您想要 multiple attribute selector

$("input[type='checkbox'][name='ProductCode']")
//assuming input type as checkbox and name of that input being ProductCode

答案 4 :(得分:0)

您应该在val的地方使用value,解决方案是:

$(document).ready(function() {
    if ($("input").val()) {
      $("h1").hide();
    }
});