根据JQuery中的唯一标识符获取表行信息
我有一张这样的桌子:根据JQuery中的唯一标识符获取表行信息,jquery,Jquery,我有一张这样的桌子: <table> <tr> <td> ID1 </td> <td> mr Dawson </td> <td> 37 </td> <td> New York </td> </tr> <tr> <td> ID2 </td> <td> mr Tu
<table>
<tr>
<td> ID1 </td>
<td> mr Dawson </td>
<td> 37 </td>
<td> New York </td>
</tr>
<tr>
<td> ID2 </td>
<td> mr Turner </td>
<td> 47 </td>
<td> Washington </td>
</tr>
<tr>
<td> ID3 </td>
<td> mr Craig </td>
<td> 26 </td>
<td> California </td>
</tr>
</table
SELECT * FROM TableName WHERE ID = "VariableName"
ID - mr Dawson - 37 - New York
但我需要知道如何针对特定行,而不是返回所有行
为了更好地解释我是否使用SQL,我可以使用如下查询:
<table>
<tr>
<td> ID1 </td>
<td> mr Dawson </td>
<td> 37 </td>
<td> New York </td>
</tr>
<tr>
<td> ID2 </td>
<td> mr Turner </td>
<td> 47 </td>
<td> Washington </td>
</tr>
<tr>
<td> ID3 </td>
<td> mr Craig </td>
<td> 26 </td>
<td> California </td>
</tr>
</table
SELECT * FROM TableName WHERE ID = "VariableName"
ID - mr Dawson - 37 - New York
输出应如下所示:
<table>
<tr>
<td> ID1 </td>
<td> mr Dawson </td>
<td> 37 </td>
<td> New York </td>
</tr>
<tr>
<td> ID2 </td>
<td> mr Turner </td>
<td> 47 </td>
<td> Washington </td>
</tr>
<tr>
<td> ID3 </td>
<td> mr Craig </td>
<td> 26 </td>
<td> California </td>
</tr>
</table
SELECT * FROM TableName WHERE ID = "VariableName"
ID - mr Dawson - 37 - New York
但我想将每个列的值存储为变量,以便在脚本的其他地方使用
谢谢
我的问题是如何获取行信息,即每列文本
通过使用JQuery的唯一ID
您可以使用contains
通过元素的内容获取元素
var toSearch = 'ID2';
$("table td:contains('"+toSearch+"')")
您可能需要而不是closest()
来获取子体。最接近的人会得到你的祖先而不是后代
var $Row = $("table").find('tr:eq(0)'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq(0)'); //here parameter passed to eq in index
您可以使用变量作为索引
row = 1
col = 1
var $Row = $("table").find('tr:eq('+row+')'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq('+col+'0)'); //here parameter passed to eq in index
我的问题是如何获取行信息,即每列文本
通过使用JQuery的唯一ID
您可以使用contains
通过元素的内容获取元素
var toSearch = 'ID2';
$("table td:contains('"+toSearch+"')")
您可能需要而不是closest()
来获取子体。最接近的人会得到你的祖先而不是后代
var $Row = $("table").find('tr:eq(0)'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq(0)'); //here parameter passed to eq in index
您可以使用变量作为索引
row = 1
col = 1
var $Row = $("table").find('tr:eq('+row+')'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq('+col+'0)'); //here parameter passed to eq in index
我的问题是如何获取行信息,即每列文本
通过使用JQuery的唯一ID
您可以使用contains
通过元素的内容获取元素
var toSearch = 'ID2';
$("table td:contains('"+toSearch+"')")
您可能需要而不是closest()
来获取子体。最接近的人会得到你的祖先而不是后代
var $Row = $("table").find('tr:eq(0)'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq(0)'); //here parameter passed to eq in index
您可以使用变量作为索引
row = 1
col = 1
var $Row = $("table").find('tr:eq('+row+')'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq('+col+'0)'); //here parameter passed to eq in index
我的问题是如何获取行信息,即每列文本
通过使用JQuery的唯一ID
您可以使用contains
通过元素的内容获取元素
var toSearch = 'ID2';
$("table td:contains('"+toSearch+"')")
您可能需要而不是closest()
来获取子体。最接近的人会得到你的祖先而不是后代
var $Row = $("table").find('tr:eq(0)'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq(0)'); //here parameter passed to eq in index
您可以使用变量作为索引
row = 1
col = 1
var $Row = $("table").find('tr:eq('+row+')'); //here parameter passed to eq in index
var $cell = $Row.find('td:eq('+col+'0)'); //here parameter passed to eq in index
您可以使用filter()
方法按单元格内容查找行。例如:
var id = 'ID2';
var row = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
});
然后,您可以使用此方法获取表单元格数组:
var data = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
})
.find('td').map(function() {
return $(this).text();
}).get();
console.log(data);
演示:您可以使用filter()
方法按单元格内容查找行。例如:
var id = 'ID2';
var row = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
});
然后,您可以使用此方法获取表单元格数组:
var data = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
})
.find('td').map(function() {
return $(this).text();
}).get();
console.log(data);
演示:您可以使用filter()
方法按单元格内容查找行。例如:
var id = 'ID2';
var row = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
});
然后,您可以使用此方法获取表单元格数组:
var data = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
})
.find('td').map(function() {
return $(this).text();
}).get();
console.log(data);
演示:您可以使用filter()
方法按单元格内容查找行。例如:
var id = 'ID2';
var row = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
});
然后,您可以使用此方法获取表单元格数组:
var data = $('table tr').filter(function() {
return $(this).find('td:eq(0)').text() === id;
})
.find('td').map(function() {
return $(this).text();
}).get();
console.log(data);
演示:鉴于发布了所需的输出,并且没有任何用户输入/操作导致该输出,我建议(尽管未经测试): 要获取JavaScript对象中的所有行,请执行以下操作:
var allRows = {};
$('table tr').each(function(index){
allRows['row' + (index + 1)] = $(this).find('td').map(function(){
return $(this).text();
}).get().join(' - ');
});
参考资料:
var allRows = {};
$('table tr').each(function(index){
allRows['row' + (index + 1)] = $(this).find('td').map(function(){
return $(this).text();
}).get().join(' - ');
});
参考资料:
var allRows = {};
$('table tr').each(function(index){
allRows['row' + (index + 1)] = $(this).find('td').map(function(){
return $(this).text();
}).get().join(' - ');
});
参考资料:
var allRows = {};
$('table tr').each(function(index){
allRows['row' + (index + 1)] = $(this).find('td').map(function(){
return $(this).text();
}).get().join(' - ');
});
参考资料: