javascript - JQuery 不读取动态创建的元素属性

标签 javascript jquery undefined

嗯,我认为这将是一个简单的问题,但我无法意识到 Jquery 如何丢失/无法找到元素的属性:

Javascript:

for (var i=0; i<=10; i++)
{
    Cells[i]=document.createElement('div');
    Cells[i].id = "Cell"+String(i);
    Cells[i].className = "CellClass";
    if (i==0)//Let's look the fist one (neverminds which one).
    {
        alert(Cells[0].className);//This would alert: "CellClass" (without quotes).
        alert($("#Cell0").className);//This would alert: "undefined" (without quotes).
        //Another way:
        alert($(Cells[0]).className);//This would alert: "undefined" (without quotes).
    }
}

对于这个问题,类 .CellClass 本身并不相关,不管定义哪些属性。

我不明白什么?

最佳答案

$(Cells[0]) 返回一个 jQuery 包装对象,而不是 dom 元素引用,因此它没有像 className 这样的属性。

您可以使用以下任意一种方法

Cells[0].className
$(Cells[0]).prop('className')
$(Cells[0]).attr('class')

还要确保在执行 jQuery 选择器 $("#Cell0") 之前将该元素添加到 dom 结构,否则将找不到该元素dom 查找

关于javascript - JQuery 不读取动态创建的元素属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20870882/

相关文章:

go - cgo(golang): error: underfined reference to 'hello'

ember.js - 这在 Controller 中未定义(ember,3.x)

javascript - Ajax 在滚动时加载更多加载错误的图像

javascript - 如何将多个 jQuery 函数嵌套到可访问的变量中?

javascript - 从 JSDoc3 获得更好的输出

javascript - 图片加载失败

jquery - 在 CSS 中,如何切换选项卡颜色(如果它被选中)(不使用 javascript)

javascript - 使用字符串设置数组名称

Vue.js 中的 JavaScript 方法和子元素

ruby-on-rails-3 - Ruby on Rails 教程第 9 步中未定义的方法 `post_comment_path'