2017-01-31 3 views
-1

Мне нужно выбрать элемент <th>A</th> в таблице, путь которой равен *[@id="something"]/table/thead/tr/th[2] и изменить ее ширину.Выбор элементов великих детей по jQuery и изменение их ширины

(function ITPscript() { 
 
    $(document).ready(function() { 
 
    $("#something table thead tr:nth-child(2)").width(1000); 
 
    }); 
 
})();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="something" class="aaa"> 
 
    <table class="sortable"> 
 
    <thead> 
 
     <tr> 
 
     <th>0</th> 
 
     <th>A</th> 
 
     <th>B</th> 
 
     <th>C</th> 
 
     <th>D</th> 
 
     <th>E</th> 
 
     <th>F</th> 
 
     <th>G</th> 
 
     <th>H</th> 
 
     <th>I</th> 
 
     <th>J</th> 
 
     <th>K</th> 
 
     <th>L</th> 
 
     <th>M</th> 
 
     <th>N</th> 
 
     <th>O</th> 
 
     </tr> 
 
    </thead> 
 
    <tbody id="aBody"> 
 
     <tr> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     </tr> 
 
    </tbody> 
 
    <tfoot></tfoot> 
 
    </table> 
 
</div>

Я использую $("#something table thead tr:nth-child(2)").width(140);, но он не работает. Нужен правильный способ выбора элемента.

ответ

0

:nth-child не выбирает п-й ребенок элемента, он выбирает элемент, который является п-й ребенок своего родителя. Селектор должен быть ... tr th:nth-child(2):

(function ITPscript() { 
 
    $(document).ready(function() { 
 
    $("#something table thead tr th:nth-child(2)").width(1000); 
 
    }); 
 
})();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="something" class="aaa"> 
 
    <table class="sortable"> 
 
    <thead> 
 
     <tr> 
 
     <th>0</th> 
 
     <th>A</th> 
 
     <th>B</th> 
 
     <th>C</th> 
 
     <th>D</th> 
 
     <th>E</th> 
 
     <th>F</th> 
 
     <th>G</th> 
 
     <th>H</th> 
 
     <th>I</th> 
 
     <th>J</th> 
 
     <th>K</th> 
 
     <th>L</th> 
 
     <th>M</th> 
 
     <th>N</th> 
 
     <th>O</th> 
 
     </tr> 
 
    </thead> 
 
    <tbody id="aBody"> 
 
     <tr> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     <td>1</td> 
 
     </tr> 
 
    </tbody> 
 
    <tfoot></tfoot> 
 
    </table> 
 
</div>

+0

Спасибо, но я использовал п-й ребенок в ушка с тр, чтобы выбрать элементы. $ ("# iaBody tr"). each (function() {var tid = $ (': nth-child (5)', this). –

+0

Ваш «но» не изменяет порядок «nth-child» define: https://developer.mozilla.org/en/docs/Web/CSS/:nth-child В контексте, где к нему не прикреплен квалифицированный селектор, ': nth-child' выбирает * любой * элемент, который является * nth * child.Ie это как 'tr: nth-child()' ('tr *: nth-child'), что не совпадает с' tr: nth-child() '. – deceze

+0

, но было , работал в главном коде спасибо, но я все еще смущен LOL –

Смежные вопросы