2017-05-19 49 views
0

我的頁面有一個表的jQuery獲取元素沒有在代碼工作

<table class="table table-bordered table-striped table-bordered" id="MapDetails" data-role="grid" role="grid" tabindex="0"> .. </table> 

當我

$("#MapDetails").load(url, ...); 

重裝變得

<table class="table table-bordered table-striped table-bordered" id="MapDetails" data-role="grid" role="grid" tabindex="0"> 
    <table class="table table-bordered table-striped table-bordered" id="MapDetails" aria-activedescendant="MapDetails_active_cell"> 

<thead> 
    ... 
</thead> 
<tbody> 
    ... 
</tbody> 

現在我想訪問子表(第二個)。當我在瀏覽器嘗試

$("#MapDetails:not([role='grid'])") 

它似乎正常工作(。孩子()則顯示了THEAD和TBODY元素) 但寫的時候在JavaScript代碼亙古不工作在所有相同的查詢。

+0

你不能在這樣的表格內有一個表格。 – Barmar

+2

您也不能使用相同的'id' –

+1

兩個元素.load函數將返回的HTML *放入匹配的元素中。因此,當您重新加載表格時,.load函數將表格放入表格中。 –

回答

2

jQuery Load Function從服務器加載數據並將其放置在匹配元素的INSIDE中。

我想說的是頁面只不過是表格而已。

因此,當您打電話給$('#MapDetails').load(url, ...);時,您正在重新載入頁面,即表格,並將該數據放置在現有表格的內。你可以做$('#MapDetails').parent().load(url, ...);,那麼你不必擔心訪問子表。

相關問題