【问题标题】:jQuery detect if .find(' ').text() is defined or notjQuery 检测 .find(' ').text() 是否已定义
【发布时间】:2012-09-07 13:14:11
【问题描述】:

我有这样的代码

if ($('#bar #username').text()!=$('.widget-' + widget.id).find('.user').text())
{
//do something
}

不幸的是,如果$('.widget-' + widget.id).find('.user').text() 不存在/未定义,它不会通过。

如何检查是否已定义?

我已经尝试if (typeof $('.widget-' + widget.id).find('.user') === "undefined") 来检查它是否已定义,但它没有帮助,因为

alert (typeof $('.widget-' + widget.id).find('.user')) 显示Object

alert (typeof $('.widget-' + widget.id).find('.user').text()) 显示String

【问题讨论】:

    标签: jquery string object undefined typeof


    【解决方案1】:

    根据the jQuery FAQ,检查length 属性:

    if ($('.widget-' + widget.id).find('.user').length) {
        // it exists
    }
    

    【讨论】:

      【解决方案2】:

      如果您想查看一个 jQuery 对象是否匹配任何 DOM 元素,请使用 $("whatever").length -- 它将不为零。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        • 2023-04-03
        • 2018-03-10
        • 2023-03-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多