我的任务的一些上下文 - 用户看到一个表并选择行然后通过sql上传到主sql表。
我的问题 - 我需要能够仅将表格中的选定行加载到数组中。
现在我只能在Javascript中将整个表加载到一个数组中,然后将其发布到php页面然后print_r数组,并使用这段代码获取所有值:
PDF
我尝试了多项操作来获取所选行,例如从以下位置更改此行:
echo '<script>
var myTableArray = [];
$("#uploads_approval tr").each(function() {
var arrayOfThisRow = [];
var tableData = $(this).find("td");
if (tableData.length > 0) {
tableData.each(function() {
arrayOfThisRow.push($(this).text());
});
myTableArray.push(arrayOfThisRow);
}
});
var selectedRows = document.getElementById("selectedRows");
selectedRows.value = myTableArray;
</script>';
到此:
$("#uploads_approval tr").each(function() {
然后我的数组输出什么也没有返回。
我也试过这样的事情,但也没有成功
$("#uploads_approval tr.selected").each(function() {
单击事件以选择行:
echo "<script>
var Array2 = [];
$('#uploads_approval tr').each(function() {
var tableData = $(this).find('td');
for(i = 0; i < tableData.length; i++){
tableData.each(function() {
var thisRow =
document.getElementByClassName('selected').Text();
array2.push(thisRow);
});
}
var selectedRows = document.getElementById('selectedRows');
selectedRows.value = Array2;
}
</script>";
提交活动表格:
echo "<script> $('#uploads_approval tr').click(function(){ $(this).toggleClass('selected'); }); </script>";
我是Javascript / Jquery的新手,所以我正在学习。
对此有任何帮助或建议将不胜感激。
答案 0 :(得分:1)
每次单击tr
时更新您的值$('#uploads_approval tr').click(function(){
$(this).toggleClass('selected');
var row = [];
$('.selected').each(function(i,v){
row.push($(v).text());
});
$('#selectedRows').val(row);
});
$('#uploads_approval tr').click(function() {
$(this).toggleClass('selected');
var row = [];
$('.selected').each(function(i, v) {
row.push($(v).text());
})
$('#selectedRows').val(row);
});
&#13;
.selected {
color: red;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<br>
<table id="uploads_approval">
<tbody>
<tr>
<td>tr1</td>
</tr>
<tr>
<td>tr2</td>
</tr>
<tr>
<td>tr3</td>
</tr>
<tr>
<td>tr4</td>
</tr>
</tbody>
</table>
<input type="text" id="selectedRows">
&#13;