更改div中所有h2元素的innerhtml

时间:2012-10-07 05:50:01

标签: javascript innerhtml

这可能是一个愚蠢的错误,但我似乎无法让这个工作。 我正在尝试使用id = variable id。

的div更改所有H2元素的innerhtml
var numberOfQuestions = $('.question').length;
  var id = "question"+(numberOfQuestions);
  clone.id=id;
  document.documentElement.getElementById(id).getElementsByTagName( "h2" ).innerhtml= "Question"+(numberOfQuestions);

我认为我在这里做错了什么:document.documentElement.getElementById(id).getElementsByTagName( "h2" ).innerhtml= "Question"+(numberOfQuestions); nrtire脚本:

 <script type="text/javascript">

function copyAppendRow() {
  var question = document.getElementById("question");
  var clone=question.cloneNode(true);
  var numberOfQuestions = $('.question').length;
  var id = "question"+(numberOfQuestions);
  clone.id=id;
  var questiondiv = document.getElementById(id);
var h2s = questiondiv.getElementsByTagName("h2");
for(var h = 0; h < h2s.length; h++ ) {
  h2s[h].innerHTML = "Question"+(numberOfQuestions); }
  if($('#questionsuccess').css('display') == 'none'){
  $('#questionsuccess').fadeIn('fast');
 $('#questionsuccess').fadeOut(4000);
  }
  }

</script>

2 个答案:

答案 0 :(得分:7)

你的意思是:

var divEle = document.getElementById("yourDivId");
var h2s = divEle.getElementsByTagName("h2");
for(var h = 0; h < h2s.length; h++ ) {
  h2s[h].innerHTML = "Question"+(numberOfQuestions);
}

OR jQuery方式:

$("#"+yourDivId + " > h2").html("Question"+(numberOfQuestions));

答案 1 :(得分:2)

我从你的第一行看到你已经在使用jQuery了,所以让自己轻松生活并用它来完成这项任务。

$('#' + id + ' h2').html( 'Question ' + numberOfQuestions );

jQuery选择器就像CSS选择器一样工作。因此,这行代码会找到变量id作为其id的元素,并获取该元素中的所有h2标记。 .html是一个jQuery方法,用于设置元素的内部HTML。