【问题标题】:How i can remove particular row from table using jquery我如何使用 jquery 从表中删除特定行
【发布时间】:2011-12-02 06:28:52
【问题描述】:

第一个问题:

当用户删除特定行时,我必须仅在不刷新页面的情况下删除该行。 使用 ajax 删除行。我该怎么做呢

第二个问题: 实际上,我正在计算从那天到前 7 天的页面点击时间。 但我想今天页面点击时我必须检索前一周 指星期日(2011 年 11 月 20 日)至星期六(2011 年 11 月 20 日) 当页面在下周一点击时,我必须检索本周的记录 指从星期日(2011 年 11 月 27 日)到星期六(2011 年 12 月 3 日)

function authenticate(){
$.ajax({
type: "POST",
url: "authentication.php",                 
data: $("#login_form").serialize(),
success: function(msg){
    if(msg==1){
    $('#delete').html("success"); //if success message appear only i have to remove particular row
    }) 
    }else{
    $('#delete').html("error");
    }
},
error:function(msg){
    alert(msg);
    $('#delete').dialog("close"); 
}              
});
}
<div style='display: none;' id='delete'></div>
<table border="1">
<tr>
    <th>Title</th>
    <th>Public Id</th>
    <th>Pass</th>
    <th></th>
</tr>
<?php
$select = $db->select ()
    ->from ( 'test', '*' )
    ->where ( 'user_id = ?', 1 )
    ->where ( 'test.created > DATE_SUB(CURDATE(), INTERVAL 7 DAY)' );
$tourDetails = $db->fetchAll ( $select );
$i = 0;
foreach ( $tourDetails as $row1 ) {
    $i ++;
    $title = $row1 ['title'];
    $PublicId = $row1 ['public_id'];
    if (($i % 2) == 0 ) {
        $rowResponse =  prepareRow ( true, $title, $PublicId);
        echo $rowResponse;
    } else {
        $rowResponse = prepareRow ( false, $title, $PublicId);
        echo $rowResponse;
    }
}
function prepareRow($flag, $title, $PublicId) {
$rowResponse = "";
if ($flag) {
    $rowResponse .= '<tr class="even">';
} else {
    $rowResponse .= '<tr class="odd" >';
}
    $rowResponse .= '   
    <td> ' . $title . ' </td>
    <td> ' . $publicId . ' </td>
    <td><p><a onclick=openDialog("'. $PublicId .'","delete") href="#" id="dialog_link"> 
    Delete </a></p>
    </td>';
return $rowResponse;
?>
</table>

【问题讨论】:

    标签: php jquery mysql


    【解决方案1】:

    您可以使用 jQuery 的 nth-child 选择器。

    $("table#mytableid tr:nth-child(2)").remove();
    

    例如,这将删除第二行。确保您的表格具有 ID 或类别,以便您更轻松地选择它(不要意外删除页面上每个表格的第二行,以防您有更多表格)...

    编辑

    根据我在您的代码中看到的内容,您可以从 onclick 事件中选择父 tr 元素,然后将其作为新参数发送到函数(您将在 ajax 返回成功时将其删除)或立即将其删除...或任何你想要的。

    【讨论】:

    • 我必须删除不是第二行用户删除的行
    • 我只是给你一个例子......你可以找到已删除行的行号并将其而不是 2 或在删除时为该行分配一个 ID,然后使用 vikky 的方法。
    • 您可以使用特定点击元素的索引。
    • 感谢您帮助完成它。
    【解决方案2】:
    $('#myTableRow').remove(); 
    
     This works fine if your row has an id, such as:
    <tr id="myTableRow"><td>blah</td></tr> 
    

    【讨论】:

      【解决方案3】:

      使用msg.d

      例如:

      if(msg.d == 1)
      

      【讨论】:

      • 通常不鼓励仅使用代码回答。请详细说明一下。这与其他答案相比如何?
      猜你喜欢
      • 2012-04-12
      • 2012-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-30
      • 1970-01-01
      • 1970-01-01
      • 2023-02-08
      相关资源
      最近更新 更多