Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不刷新的情况下删除动态创建的表行(优先使用标准向左滑动动画)_Javascript_Jquery - Fatal编程技术网

Javascript 如何在不刷新的情况下删除动态创建的表行(优先使用标准向左滑动动画)

Javascript 如何在不刷新的情况下删除动态创建的表行(优先使用标准向左滑动动画),javascript,jquery,Javascript,Jquery,对不起,我还要问一个问题。谷歌帮不了我:( 我尝试在CMS中创建一个用户控制管理。 问题是我完全了解javascript和jQuery,我必须在单击按钮时删除一个表行而不刷新页面。我的想法是设置行显示:隐藏,但我不知道如何获取行的id 这是我的密码: <?php $abfrage= mysql_query("SELECT * FROM user ORDER BY id asc"); //$ergebnis = mysql_query($abfrage) or die( m

对不起,我还要问一个问题。谷歌帮不了我:( 我尝试在CMS中创建一个用户控制管理。 问题是我完全了解javascript和jQuery,我必须在单击按钮时删除一个表行而不刷新页面。我的想法是设置行显示:隐藏,但我不知道如何获取行的id

这是我的密码:

<?php

    $abfrage= mysql_query("SELECT * FROM user ORDER BY id asc");
    //$ergebnis = mysql_query($abfrage) or die( mysql_error() ); 
    echo "<table>";
    echo"<caption>Mitglieder<br></caption>";
    echo"<table border=\"1\" style=\"width:300px\">";
     echo "<th>ID</th>
        <th>Name</th>
        <th>Vorname</th>
        <th>Rolle</th>
        <th>Funktionen</th>";
    //loop, um alle Nutzer zu identifizieren    
    while($row = mysql_fetch_object($abfrage))
{

  echo "<tr>";
  echo "<td align=center id =",$row->id,">",$row->id,"</td>";
  echo "<td align=center>" ,$row->Name,"</td>";
  echo "<td align=center>",$row->Vorname,"</td>";
  //Vorbelegung
  echo "<td align=center><select><option selected = \"selected\">",$row->Rolle,"</option>";
  //loop, um alle Rollen zu identifizieren. AKTUELL: doppelte Rollen werden noch doppelt angezeigt. Eventuell Rollen auslaagern
  $file = mysql_query("SELECT Rolle FROM user WHERE 1");
    while ($role = mysql_fetch_row($file)) 
    {
        if ($role[0]!= $row->Rolle) {
              echo "<option value=".$role[0].">",$role[0],"</option>";
        } 



    }

  echo "</select></td>";
  echo  "<td align=center><button type = \"button\" onCLick = \"deleteUser()\">Löschen</button></td>";


}
echo "</table>";
?>
<html>
<script type="text/javascript">
    function deleteUser() {
    alert("And it works");
    document.getElementById(id).style.display = 'none'


}
</script>
</html>

函数deleteUser(){
警惕(“而且有效”);
document.getElementById(id).style.display='none'
}
问题在于:

echo "<td align=center id =",$row->id,">",$row->id,"</td>";
echo”“$row->id”“;
这是为每一行创建id的正确方法吗

如果有人知道如何实现它,我希望有一个“删除”(删除显然是错误的词,因为它只是隐藏的)动画

提前谢谢你


Ps:我知道,我必须将mysl更改为SQLi:)

您可以在jQuery中使用
remove
函数

您需要将ID指定给
而不是行中的
,接下来您的
deleteUser
函数应该将“ID”作为参数,最后您应该从
deleteUser
函数中删除该行。但是您需要一种方法来通知您的数据库用户已被删除,也许ajax到API可以工作,但我不知道您的系统是如何设置的


函数deleteUser(id){
$(id).remove();
//采取措施让服务器知道用户已被删除
}

我不是JQuery的粉丝,因为这会让你忘记Javascript的基本知识!有些事情真的很简单,但是。。。嗯,不知道

也许这个“功能”可以帮助您:

function dropRow(rowId) {
    try {
        var tblResponse= document.getElementById('tblResponse');    
        var rowCount = tblResponse.rows.length;

        for(ix=0; ix < rowCount;ix++) {
            var row = tblResponse.rows[ix];
            var id = row.cells[0].childNodes[0].id; //The ID of something what identifies the Row
            if(id == 'dropRow'+rowId) {
                tblResponse.deleteRow(ix);
                rowCount--;
                ix--;
            }
        }
    }catch(e) {
        alert(e);
    }
}
函数dropRow(rowId){
试一试{
var tblResponse=document.getElementById('tblResponse');
var rowCount=tblResponse.rows.length;
对于(ix=0;ix