[英]get id of HTMLDivElement
我在函數中傳遞了HTMLDivElement,如下所示
var tableHTML = "...
<li name="Item2" onclick="onCombToPie2D(\'' + id + '\');" >Pie 2D</li>
....";
$('#graphsDiv').append(tableHTML);
我可以按以下方式訪問該元素
function onCombToPie2D(element) {
alert($('#element'));
}
但現在我無法訪問此元素的ID。 到目前為止,我已經嘗試了以下方法
alert($('#element').attr('id')); //undefined
alert($('#element').prop('id')); //undefined
alert(element.id); //undefined
在我的viewsource中,存在div(這是劍道圖)
<div id="chartmd2467rt6" data-role="chart" class="k-chart" style="position: relative; touch-action: none;"> ... </div>
試試這個例子:
function onCombToPie2D(idElemento) { alert($('#'+idElemento).attr('id')); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li name="Item2" onclick="onCombToPie2D('chartmd2467rt6');" >Pie 2D</li> </ul> <div id="chartmd2467rt6" data-role="chart" class="k-chart" style="position: relative; touch-action: none;"> ... </div>
而不是傳遞HTMLDivElement,而是將其ID傳遞給函數
<li name="Item2" onclick="onCombToPie2D(\'' + id.id + '\');" >Pie 2D</li>
現在在功能
function onCombToPie2D(element) {
alert('#' + element);
}
這給了我正確的元素
我建議您使用data-attribute
而不要傳遞數據作為參數。
$(document).on('click', 'li', function(){ console.log($(this).data('id')); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li name="Item2" data-id="chartmd2467rt6" >Pie 2D</li> <li name="Item2" data-id="chartmd2467ry0" >Line 2D</li> </ul> <div id="chartmd2467rt6" data-role="chart" class="k-chart" style="position: relative; touch-action: none;"> ... </div>
希望這會幫助你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.