【问题标题】:Undefined variable keyup function jQuery未定义的变量keyup函数jQuery
【发布时间】:2015-08-21 07:35:01
【问题描述】:

我想我有一个简单的问题,但我想不通。当我检查我的调试器时,我收到以下警告:

TypeError: $(...).val(...) is undefined

如果用户在输入框中键入超过 3 个字符,我想添加一个类。该脚本有效,但警告很烦人。

$(this).keyup(function(e) {

    var next_obj = jQuery("#kader .testnavigatie .checknext");
    inputidnummer = $(e.target).attr("id"); 

    if( $("#"+inputidnummer).val().length >= 3)   
    {       
        next_obj.removeClass("nextDisabled");
    }
    else {
        next_obj.addClass("nextDisabled");
    }
});

当用户点击输入字段时,我需要获取 id。

【问题讨论】:

  • 为什么不只是if (this.value.length >= 3) ..
  • 你能举个jsfiddle的例子吗?
  • 您的所有输入都指定了 id 吗?

标签: jquery undefined typeerror keyup


【解决方案1】:

你可以试试这个:

$(selector).keyup(function(e) {

    var next_obj = $("#kader .testnavigatie .checknext");

    if( $(this).val().length >= 3)   
    {       
        next_obj.removeClass("nextDisabled");
    }
    else {
        next_obj.addClass("nextDisabled");
    }
});

【讨论】:

    【解决方案2】:

    改变

    inputidnummer = $(e.target).attr("id");

    inputidnummer = $(this).attr("id");

    编辑

    并确保您的输入元素中有id 属性。因为我相信这就是你所缺少的。

    WORKING DEMO

    【讨论】:

    • 应该是一样的。
    • 没问题..随时提供帮助:)
    • 对我来说,将inputidnummer = $(this).attr("id"); 更改为inputidnummer = $(e.target).attr("id");
    猜你喜欢
    • 1970-01-01
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 2021-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多