Javascript 将选定行从html表加载到数组
我的任务的一些上下文-用户看到一个表并选择行,然后通过sql上传到主sql表 我的问题-我需要能够仅将表中选定的行加载到数组中 现在,我只能将整个表加载到Javascript中的数组中,然后将其发布到php页面,然后打印数组,通过这段代码获得所有值:Javascript 将选定行从html表加载到数组,javascript,php,jquery,html,arrays,Javascript,Php,Jquery,Html,Arrays,我的任务的一些上下文-用户看到一个表并选择行,然后通过sql上传到主sql表 我的问题-我需要能够仅将表中选定的行加载到数组中 现在,我只能将整个表加载到Javascript中的数组中,然后将其发布到php页面,然后打印数组,通过这段代码获得所有值: echo '<script> var myTableArray = []; $("#uploads_approval tr").each(function() { var arrayOfThisRow =
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.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>";
提交活动的表格:
echo '<form action="uploads_approval.php" method="post" >' . '<input
type="hidden" name="uploadRows" id="uploadRows" value="1" /> '; echo
'<button id="button" ">SELECT</button> '; echo '<input type="hidden"
name="selectedRows" id="selectedRows" value="1" /> '; echo '</form>';
我对Javascript/Jquery非常陌生,所以我边学习边学习
如果您对此有任何帮助或建议,我们将不胜感激。请在每次单击tr时更新您的值
$('#uploads_approval tr').click(function(){
$(this).toggleClass('selected');
var row = [];
$('.selected').each(function(i,v){
row.push($(v).text());
});
$('#selectedRows').val(row);
});
$“上传\批准tr”。单击功能{
$this.toggleClass'selected';
var行=[];
$'.selected'.eachfunctioni,v{
row.push$v.text;
}
$'selectedRows'.valrow;
};
.选定{
颜色:红色;
}
tr1
tr2
tr3
tr4
选择行的单击事件在哪里?@madalinivascu它位于单独的脚本标记中。echo$'uploads_approval tr'。单击函数{$this.toggleClass'selected';}; ;如何将这些数据提交到db?提交事件在哪里?现在我只需要将所选行放入数组中。一旦这是工作,我可以得到数据的数据库。我现在的问题是我只能把所有的行放在数组中,而不仅仅是选定的行。谢谢,现在就看。你能解释一下这是干什么用的吗?$'选定的行“.valrow;它的jquery等价于var selectedRows=document.getElementById'selectedRows';selectedRows.value=Array2;似乎不起作用。添加该代码位后,不再选择行。$'上载“_approvaltr.”单击函数{$this.toggleClass'selected';变量行=[];$”.selected.eachFunction,v{row[]=$v.val;};$'selectedRows.valrow;};不一样。函数中的i,v代表什么?$。很抱歉,我问了很多问题,因为我试图理解它,而不是仅仅复制它。i是索引,v是值
$('#uploads_approval tr').click(function(){
$(this).toggleClass('selected');
var row = [];
$('.selected').each(function(i,v){
row.push($(v).text());
});
$('#selectedRows').val(row);
});