【问题标题】:How to get all divs of a certain class and add innerHTML如何获取某个类的所有div并添加innerHTML
【发布时间】:2013-12-28 13:25:49
【问题描述】:

我正在尝试针对某个类的所有 div 并应用 innerHTML。这就是我所拥有的,但我没有收到任何错误,也没有结果。

$( ".programdesc" ).innerHTML( '<p>I am alive</p>' );

任何指针?

【问题讨论】:

  • 请接受一个答案,让大家知道您的问题已经解决。

标签: jquery


【解决方案1】:

使用the html function

$( ".programdesc" ).html( '<p>I am alive</p>' );

【讨论】:

  • 这是一个非常挑剔的评论,但这将获得该类的所有元素,而不仅仅是divs。我猜它最终对 OP 的代码没有任何影响。
  • @ajp15243 对。 OP,如果这对您来说是个问题,请使用$('div.programdesc')。请注意,如果这不是问题,最好(更快)将类放在选择器中。
  • 这是否会获取该类的所有元素,即使它们有其他类?
  • @miles 是的,会的。
  • 啊,让它工作(脚本在错误的地方,需要在内容之后)。但是,此方法替换了 HTML。我在下面的答案中看到了 Append 方法并尝试了,瞧!抱歉,应该指定我想附加 html。
【解决方案2】:

试试:

$("div.programdesc").append('<p>I am alive</p>');

DEMO

【讨论】:

    【解决方案3】:

    你应该使用每个

    $( "div.programdesc" ).each(function() {
     (this).innerHTML( '<p>I am alive</p>' );
    });
    

    http://api.jquery.com/each/

    【讨论】:

      【解决方案4】:

      innerHTML 是 DOM 元素的属性,而不是函数。该属性存在于纯 Javascript 中,而不是 jQuery 语句中。

      $(".programdesc").html( 'this is the jQuery way' );
      
      document.getElementsByClassName('programdesc').index(0).innerHTML = "This is the Javascript way";
      

      【讨论】:

      • 第二个不行。实时节点列表没有此属性。
      • 嗯,你绝对是对的,但是 OP 没有提到捕获实时元素。如果这是问题,请到这里stackoverflow.com/a/9106397/401299
      • "某个类的所有div"
      • “确定”这个词意味着某种特定的东西……某种特殊的东西。 $('.certain') 将捕获类中包含某些特定元素的所有特定元素......现在,如果他说的是动态,我会同意你的看法。
      • 而 JavaScript 绝对不是你所知道的......只需测试你的代码。您会看到document.getElementsByClassName 返回的实时列表根本没有任何innerHTMLproperty...
      猜你喜欢
      • 2015-02-28
      • 1970-01-01
      • 2014-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多