1

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

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

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

页面上有一个表格,<input type=text>。我想让它在任何时候,如果输入框中有任何文本,都会应用某种状态。如果输入框返回为空,则移除状态。

函数内部还有很多其他函数$(document).ready,为了清楚起见,我省略了……但就 if 语句所在的范围而言,它直接位于 document.ready 函数内部。PS 表单是动态显示和隐藏的,但它是硬编码的——它不是动态创建的。

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

4

5 回答 5

7

试试.val()喜欢

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

最好使用nameoridclass names作为选择器。因为input可以是任意数字,它们还包括checkboxes,radio buttonsbutton类型

于 2013-08-16T07:28:26.833 回答
1

在 jQuery 中,你必须使用.val()method 而不是.value(). 您的支票应如下所示:

if ($("input").val()) {
 $("h1").hide();
}
于 2013-08-16T07:29:07.160 回答
1

.value()是无效的。您应该使用.val()而不是.value(). 希望它能让它工作吗?

于 2013-08-16T07:30:55.850 回答
1

.value()in不同JS,有.val()in JQuery

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

您应该keyup知道何时从textbox

$(document).ready(function() {
    $("#input_data").keyup(function() {
        var dInput = $(this).val();
        alert(dInput);

    });
});

演示

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

input[type=text]

或者,限制表单内的文本输入

form input[type=text]

或者,进一步限制为某种形式,假设它有 idmyForm

#myForm input[type=text]

如果您想要一个多属性选择器

$("input[type='checkbox'][name='ProductCode']")
//assuming input type as checkbox and name of that input being ProductCode
于 2013-08-16T07:40:20.807 回答
0

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

$(document).ready(function() {
    if ($("input").val()) {
      $("h1").hide();
    }
});
于 2013-08-16T07:48:39.217 回答