2017-02-23 43 views
0

Моя строка выглядит следующим образом:как разобрать строку HTML с JQuery

<table> 
<tbody> 
    <tr> 
    <td>Sack</td> 
    <td>&nbsp;</td> 
    <td>7.48</td> 
    <td>&nbsp;</td> 
    </tr> 

    <tr> 
     <td>Palette</td> 
     <td>&nbsp;</td> 
     <td>23.41</td> 
     <td>&nbsp;€</td> 
    </tr> 
</tbody> 

Я хотел бы разобрать его с JQuery, так что я могу добавить <td> внутрь из <tr>-х в конце.

Я пробовал следующее: Считайте, что «item [index] .preis» содержит строку без id или класса.

var el = $.parseHTML(item[index].preis); 
    console.log(el[1]); 

[! [Введите описание изображения здесь] [1]] [1]

я попытался получить доступ к тру с .children() но не работал.

+0

Использование 'el.f ind ('tr') ', поскольку' tr' являются дочерними элементами 'tbody', а не самой' table' –

+0

, он говорит, что find не является функцией – moody

+0

Итак, вы хотите просто добавить дополнительные данные таблицы в последнюю строку таблицы, которую у вас есть? –

ответ

0

Если вы хотите вставить те же значения, в конце каждой строки таблицы вы можете использовать следующее:

var rows = document.getElementsByTagName("tr"); 
 

 
for (var i = 0; i < rows.length; i++) 
 
{ 
 
    var rowToInsert = rows[i]; 
 
    var insertPoint = rowToInsert.insertCell(-1); 
 
    insertPoint.innerHTML = "New Value"; 
 
}
<table> 
 
    <tbody> 
 
    <tr> 
 
     <td>Sack</td> 
 
     <td>&nbsp;</td> 
 
     <td>7.48</td> 
 
     <td>&nbsp;</td> 
 
    </tr> 
 
    <tr> 
 
     <td>Palette</td> 
 
     <td>&nbsp;</td> 
 
     <td>23.41</td> 
 
     <td>&nbsp;€</td> 
 
    </tr> 
 
    </tbody> 
 
</table>

0

вы можете сделать что-то подобное. Просто заверните свои элементы в объект jQuery для выполнения операций jQuery.

var tableStr = "<table><tbody><tr><td>Sack</td><td>&nbsp;</td><td>7.48</td><td>&nbsp;</td> </tr><tr><td>Palette</td><td>&nbsp;</td><td>23.41</td><td>&nbsp;€</td> </tr></tbody></table>"; 

    var el = $.parseHTML(tableStr); 

    var allRow = $(el).find('tr'); 
    var allCol = $(allRow).children(); 
    console.log('all Row'); 
    console.log(allRow); 
    console.log('all Col'); 
    console.log(allCol); 

Вы также можете проверить скрипку здесь

http://jsfiddle.net/o2gxgz9r/3156/

0

Вы можете использовать 'найти' для поиска тра элемента, а затем 'Append' для добавления содержимого.

Делают это так:

https://jsfiddle.net/s9y6qpmv/

var elem = "<table><tbody><tr><td>Sack</td><td>&nbsp;</td><td>7.48</td><td>&nbsp;</td> </tr><tr><td>Palette</td><td>&nbsp;</td><td>23.41</td><td>&nbsp;€</td> </tr></tbody></table>"; 

var el = $.parseHTML(elem); 
    $(el).find("tr").append("<td>Game</td>") 
    console.log($(el).html()); 

    $("body").append(el); 
Смежные вопросы