4

これはおそらくばかげた間違いですが、これを機能させることができないようです。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>
4

2 に答える 2

7

次のような意味ですか?

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

またはjQueryの方法:

$("#"+yourDivId + " > h2").html("Question"+(numberOfQuestions));
于 2012-10-07T06:08:14.793 に答える
2

最初の行から、すでにjQueryを使用していることがわかります。自分の生活を楽にして、このタスクを実行するために使用してください。

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

jQueryセレクターはCSSセレクターと同じように機能します。したがって、このコード行は、変数idをIDとして持つ要素を検索し、その要素内のすべてのh2タグを取得します。.html要素の内部HTMLを設定するjQueryメソッドです。

于 2012-10-07T06:08:48.767 に答える