<body>
<div id="contacts">
<table>
<thead>
<tr>
<th class="sort" data-sort="name">Name</th>
<th class="sort" data-sort="age">Age</th>
<th class="sort" data-sort="city">City</th>
<th colspan="2">
<input type="text" class="search" placeholder="Search contact" />
</th>
</tr>
</thead>
<tbody class="list">
<tr>
<td class="id" style="display:none;">1</td>
<td class="name">Jonny</td>
<td class="age">27</td>
<td class="city">Stockholm</td>
<td class="edit"><button class="edit-item-btn">Edit</button></td>
<td class="remove"><button class="remove-item-btn">Remove</button></td>
</tr>
<tr>
<td class="id" style="display:none;">2</td>
<td class="name">Jonas</td>
<td class="age">-132</td>
<td class="city">Berlin</td>
<td class="edit"><button class="edit-item-btn">Edit</button></td>
<td class="remove"><button class="remove-item-btn">Remove</button></td>
</tr>
<tr>
<td class="id" style="display:none;">3</td>
<td class="name">Gustaf</td>
<td class="age">-23</td>
<td class="city">Sundsvall</td>
<td class="edit"><button class="edit-item-btn">Edit</button></td>
<td class="remove"><button class="remove-item-btn">Remove</button></td>
</tr>
<tr>
<td class="id" style="display:none;">4</td>
<td class="name">Fredrik</td>
<td class="age">26</td>
<td class="city">Goteborg</td>
<td class="edit"><button class="edit-item-btn">Edit</button></td>
<td class="remove"><button class="remove-item-btn">Remove</button></td>
</tr>
</tbody>
</table>
</div>
<button id="submitForm">submit</button>
</body>
JS
function SendData(){
var options = {
valueNames: [ 'id', 'name', 'age', 'city' ]
};
var tableArray =[];
$('#contacts tr').each(function(index, tr) {
var lines = $('td', tr).map(function(index, td) {
return $(td).text();
});
// Here lines will contain an array of all td values for the current row:
// like ['value 1', 'value 2', 'value 3']
tableArray.push(lines);
});
console.log(tableArray);
}
我的表格中包含一些数据,其中包括姓名,姓名,年龄,城市,编辑和删除等信息。但我只需要&#34; id,姓名,年龄,城市&#34;要存储在我的对象中,我该怎么做?而且我也不需要将thead存储在最上面。
所以我需要存储课程列表&#34; id,姓名,年龄,城市&#34;对于我的选项对象,我该怎么做?
答案 0 :(得分:0)
我认为你只想选择特定的&#34; td&#34;来自&#34; tr&#34;的标签。要进行该选择,您可以只为那些&#34; td&#34;添加额外的课程。如下。
<tr>
<td class="id myData" style="display:none;">1</td>
<td class="name myData">Jonny</td>
<td class="age myData">27</td>
<td class="city myData">Stockholm</td>
<td class="edit"><button class="edit-item-btn">Edit</button></td>
<td class="remove"><button class="remove-item-btn">Remove</button></td>
</tr>
然后你可以改变你的选择器以包括类&#34; myData&#34;也符合标准。这将选择&#34; td&#34;只有&#34; myData&#34;在他们的class属性中,它只为您提供所需的数据。
$('#contacts tr').each(function(index, tr) {
var lines = $('td .myData', tr).map(function(index, td) {
return $(td).text();
});
// Here lines will contain an array of all td values for the current row:
// like ['value 1', 'value 2', 'value 3']
tableArray.push(lines);
});
因为您只选择&#34; td&#34;来自&#34; tr&#34;所以&#34; th&#34;将不会在此选择中考虑,您只能从&#34; td&#34;正在上课&#34; myData&#34;。
这可以解决您的问题。