2015-11-08 2 views
0

Я пытаюсь улучшить JavaScript/jQuery, поэтому я думаю, что некоторые основные манипуляции с таблицами неплохо бы попробовать. Однако я не могу найти способ начать делать то, что хочу.JS: Сравните две таблицы и сгенерируйте новую, основанную на двух

Скажем, например, У меня есть две таблицы, и я хочу сравнить данные и создать третью таблицу на основе данных в двух первых. Допустим, речь идет о фильмах, и у меня есть этот список пользователей, а также список фильмов с колонкой, кому нравится фильм. В третьей сгенерированной таблицей я хочу собрать эти данные и выписать фильм, с которым ему нравится.

users 
<table id="table_1"> 
    <tr> 
     <th>user ID</th> 
     <th>name</th> 
     <th>country</th> 
    </tr> 

    <tr><td>1</td> 
     <td>martin</td>a 
     <td>usa</td> 
    </tr> 

    <tr><td>2</td> 
     <td>james</td> 
     <td>france</td> 
    </tr> 
    </table> 
movies 
<table id="table_2"> 
    <tr> 
     <th>movie id</th> 
     <th>name</th> 
     <th>users favorite (id)</th> 
    </tr> 

    <tr><td>2</td> 
     <td>the expendables</td> 
     <td>1</td> 
    </tr> 

    <tr><td>2</td> 
     <td>titanic</td> 
     <td>2, 1</td> 
    </tr> 
</table> 

results 

<div id="table"> 

</div> 

У меня есть эта скрипку: https://jsfiddle.net/fpeh6fna/

+0

ли данные трудно закодированные как скрипка или из базы данных? В жестком кодированном виде вы проанализируете html, а затем сравните анализируемую информацию. Вероятнее всего, с db было бы намного проще. –

+0

Да, это жестко закодировано, так как я просто учился. Я предполагаю, что мне придется много волноваться в таблицах. – Dueify

ответ

0

Вы можете использовать JQuery каждый команды здесь, например (всего участка кода вы хотите):

$('#table_1').children('tr').each(function() { 
    var row = []; 

    $(this).children('td').each(function() { 
     row.push($(this).text()); 
    }); 

    rows.push(row); 
}); 
Смежные вопросы