【问题标题】:Delete a row javascript using row id使用行 ID 删除行 javascript
【发布时间】:2014-06-22 02:28:15
【问题描述】:

大家好,我有一个由 php 以这种方式创建的表:

  foreach ($query as $row): ?>
                <tr id="<?php echo  $row->aic;?>" > 

                    <td><?php echo $row->aic; ?></td>
                    <td><?php echo $row->denominazione ?></td>
                    <td><?php echo $row->quantita; ?></td>
                    <td><?php echo $row->alert; ?></td>
                    <td>
                         <a id="bt_modifica"
                                class="btn btn-default btn-xs"
                                 data-toggle="tooltip" 
                                 data-placement="top" 
                                 title="" 
                                 data-original-title="Modifica">
                            <img src="<?php echo base_url(); ?>template/images/Modifica.png">
                        </a> 
                           <a id="bt_elimina>"
                                  class="btn btn-default btn-xs"
                                  data-toggle="tooltip" 
                                 data-placement="top" 
                                 title=""
                                 data-original-title="Elimina"
                                 onclick="deleteRow(<?php echo $row->aic ?>))">

                            <img src="<?php echo base_url(); ?>template/images/Elimina.png"> 
                        </a> 
                    </td>
                </tr>
            <?php 

            endforeach; ?>


            </tbody>

我需要逐行删除行。此表具有动态 ID。 列 id 与 sql 表的 id 相同;实际上aic是sql表的id!通过这种方式,我确信 HTML 行 id 是唯一的。 这是脚本

function deleteRow(rowID)
{   var row = document.getElementById(rowID);
    row.parentElement.removeChild(row);
        alert(rowID);

            }
}

此代码不会删除行。

【问题讨论】:

  • 你的问题是什么?还是问题?

标签: javascript php html html-table


【解决方案1】:

改变这个:

onclick="deleteRow(deleteRow(<?php echo $row->aic ?>))">

onclick="deleteRow(<?php echo $row->aic ?>)">

另一个潜在的问题是:

<?php echo $row->aic ?>

可能不是数字。所以,你需要引用它。也就是改变:

onclick="deleteRow(<?php echo $row->aic ?>)">

到:

onclick="deleteRow(\"<?php echo $row->aic ?>\")">

【讨论】:

  • 不工作。这是一个复制错误。在我的代码中,我有 onclick="deleteRow(aic ?>)">
  • 我在我的机器上试过了。它工作正常。您是否在浏览器的控制台中看到任何错误?你能给出这个 php 脚本返回的 HTML 页面的例子吗?我想看看 ID 长什么样。
  • 我已经用另一个潜在问题更新了我的答案。请检查。
  • 不执行任何操作。甚至不显示警报。
  • 复制粘贴您的 php 脚本生成的 HTML。它将帮助我们调试。
【解决方案2】:

2 个问题 -

  • 可能导致问题的一个 - 函数名称不正确
  • 另一个 - 调用 deleteRow() 两次 - 彼此之间(但这应该不会导致任何问题)

所以,只要改变 -

function eliminaProdotto(rowID)

到-

function deleteRow(rowID)

编辑:

基于修改后的问题 -

$row->aic 是字符串吗?如果是,则在其周围添加引号...

onclick="deleteRow('<?php echo $row->aic ?>')"

【讨论】:

  • 看起来原始问题中有太多错别字...@user2464063 - 检查编辑后的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-03-05
  • 2017-02-25
  • 2021-06-27
  • 2013-05-20
  • 1970-01-01
  • 2021-03-08
  • 2014-02-11
相关资源
最近更新 更多