Javascript 将选定行从html表加载到数组

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 =

我的任务的一些上下文-用户看到一个表并选择行,然后通过sql上传到主sql表

我的问题-我需要能够仅将表中选定的行加载到数组中

现在,我只能将整个表加载到Javascript中的数组中,然后将其发布到php页面,然后打印数组,通过这段代码获得所有值:

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" /> &nbsp;'; echo 
'<button id="button" ">SELECT</button>&nbsp;'; echo '<input type="hidden" 
name="selectedRows" id="selectedRows" value="1" /> &nbsp;'; 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);
 });