0

解決済み: 以下の編集をお読みください

まず、次のような文字列を作成します。

var child_id = "childId"+this.id;
alert(child_id);

アラートには正しい文字列が表示されます。this.id は文字列であり、一時変数も作成し、それを文字列 (var tmp_child_id = child_id.toString()) に入れて、文字列であることを確認します。

この後、次のようなhrefリンクを使用して、この文字列を関数 goToNextNode に渡します。

this.svgImageDiv.innerHTML = '<a href="javascript:goToNextNode('+child_id+')"><img src="img/transparent.png"/></a>

関数 goToNextNode では、最初にアラートを発生させ、上記のアラートのような文字列を表示しません。「[Object HTMLDivElement]」と表示されます。

function goToNextNode(childId){
   alert(childId);
}

文字列に何が起こったのか、文字列を正しく転送するにはどうすればよいですか?

編集: 解決済み: var child_id = this.id; を行うとき var child_id = "childId"+this.id; の代わりに 関数 goToNextNode() の id に「childId」文字列を配置すると、すべてが機能します。なぜこのように振る舞うのか私に聞かないでください、私にはわかりません...

編集終了

4

1 に答える 1