div 内にスクリプトがある場合、その特定の div の ID を取得するにはどうすればよいですか?
(そのため、以下のようにできますが、さまざまな div id を使用します):
<div id="chart_div1" class ="googlepie">
<script type="text/javascript">
drawChart('chart_div1');
</script>
</div>
[編集]:
2 つの html ビューがあり、1 つのビューのボタンをクリックすると 2 番目のビューが表示されます。
一部の JavaScript はこれを行うために html を再構築しますが、チャートを 2 番目のビューにのみ表示したかったので、これを処理するクリック イベントがあります。
しかし奇妙なことに、上記のように、drawChart() を呼び出すスクリプトを div 自体に配置することで、特定の div (複数の繰り返し) に特定のチャートをロードすることしかできませんでした。このため、一部の人が提案したように、スクリプトをより快適な位置に移動できませんでした。また、私が試した親の div 'ID' を取得するための提案された方法に関係なく、「未定義のコンテナー」エラーが発生し続けました。
たとえば、これは私にとってはうまくいきませんでした:
<div class ="googlepie" id="chart_div1" style ="position:absolute; top: -8%; left:63%;">
<script type="text/javascript" class ="chartscript" id="bakegooglepie">
// drawChart($('.chartscript').parent().attr('id')); // this didnt work
// drawChart($('#bakegooglepie').parent().attr('id')); // neither did this
// var parentElementID = $(document.body.lastChild).closest('div').id;
// drawChart(parentElementID); // this didnt either
drawChart('chart_div1'); // only this did
</script>
このため、私の(特定の)解決策は、ID を作成し、javascript で ID を取得する代わりに、drawChart で具体的に呼び出すことです。
しかし、私は元の質問に対する答えを、他の誰もが働いているように見えるものであると選択したので、他の人のために働くべきです.
注:ほとんどの状況で他の人が示唆しているように、私の質問が想定するように親IDを取得する必要はありません。