如何从DIV数组向DIV添加文本

时间:2012-08-19 23:05:12

标签: javascript jquery arrays

Var divs = $(".txt");这将返回divs列表,其中包含class txt。 我想将文本添加到选定的div中,例如: divs[4].html("Hello World");这个返回错误说divs[4].html不是函数。为什么?

3 个答案:

答案 0 :(得分:3)

当您通过其DOM数组索引访问jQuery对象时,您将获得HTML元素,而不是jQuery对象,它没有html()函数。改为使用eq(n) selector

$(".txt:eq(4)").html("Hello World");

答案 1 :(得分:2)

divs[0]为您提供DOM引用,不是 jQuery对象。所以,将它传递给jQuery函数($()jQuery()的简写):

$(document).ready(function(){
    var divs = $('.txt');

    $(divs[4]).html('this one');
});

http://jsfiddle.net/userdude/unu8g/

还要注意使用$(document).ready(),它将等待DOM可访问。 $(window).load()也可以满足要求,尽管可能会在onDOMReady之后触发。

答案 2 :(得分:0)

非jQuery方式:

document.getElementsByClassName("txt")[4].innerHTML = "banananana!";

只是旁注:我建议在迁移到图书馆之前学习基本的浏览器javascript。  它将让您了解这些库的工作方式,并防止您被“锁定”到特定的几个