我不知道如何在使用jquery删除记录时获取记录的id

时间:2015-09-25 10:25:19

标签: php jquery mysql ajax

<script type="text/javascript" src="../js/jquery-1.4.1.min.js"></script>
<script type="text/javascript">

$("#submit").click(function (){

    var name =$("#name").val();
    var mobile =$("#mobile").val();
    var email =$("#email").val();

    $.get('new.php',{name : name, mobile: mobile, email: email},function (data){
    $("#res").html(data);
    });

        $("#name").val("");
        $("#mobile").val("");
        $("#email").val("");
        $("#res").hide(10000);
    });//submit.click end here!!!!!!!


    $("#view").click(function(){
        var view='view';
        $.post('new.php',{view: view},function(data){
        $("#viewdata").html(data);      

        });

        $("#viewdata").toggle("slow");

    });//to display data in table!!!!!!!

    $("#add").click(function(){
    $("#addnew").toggle("slow");

    });//toggel button for record table!!!!!


$("body").on('click','',function(){     

    var iddata =this.id.split('-');
    var id = iddata[1];

    alert(id);  

    });


</script>
if(isset($_POST['view']))
{
$query="select * from userdetail";
$res=mysql_query($query);

echo "<table border=1> 
<tr><th>name</th><th>Mobile</th><th>Email</th><th>Delete</th><th>Update</th></tr>";
    while($row=mysql_fetch_array($res))
    {
    echo "<tr><td>".$row[1]."</td><td>".$row[3]."</td><td>".$row[4]."</td>";
    echo "<td><div class='del' id='id-".$row[0]."';>Delete</div></td>"; 
    echo "<td><a href='#'>Update</a></td>"; 

    }
    echo"</table>";
}
<body>

<div  id="addnew" style="width:500px; float:left;">

<div style="width:200px; float:left;">
<form name="frm" id="frm">
<input type="text" id="name"></br>
<input type="text" id="mobile"></br>
<input type="text" id="email"></br>
<input type="button" id="submit" value="submit"/></br>
</form>
</div>

<div id="res" style="width:300px; float:left;">

</div>

</div>

<button id="add">Add New</button>
<button id="view">View</button>

<div id="viewdata">
<table border=1> 
<tr>
<th>name</th><th>Mobile</th><th>Email</th><th>Delete</th><th>Update</th>
</tr>
</div>

</body>

我是jquery的新手,并试图用jquery和php学习crud函数。我正在编写一个代码,我可以通过jquery添加数据以及我可以从数据库中检索它,现在我已经放置了一个删除字段来删除该表中的记录但是我被困在这里因为我不喜欢#39;知道如何从该表中获取id,以便我可以使用它从表中删除该记录。我已经尝试过.on和委托在jquery中获取该ID,但仍然没有得到我想要的结果,所以请帮我解决这个错误。

3 个答案:

答案 0 :(得分:1)

所以你的删除单元格的html输出会是这样的

    <td>
        <div class='del' id='id-1'>Delete</div>
    </td>

在JQuery中你可以这样做:

$('.del').on('click',function() {alert(this.id)});

结果: id-1

请在此处查看http://jsfiddle.net/54nptrkd/

答案 1 :(得分:1)

通过在循环中放置id,我可以使用波纹管代码获取它 在html页面。

我可以使用

$<'#viewdata'>.on('click','.del',function(){
  alert(this.id);
})

它将弹出结果id-31id-1(无论选择什么)。

现在您可以使用该ID删除记录。 .del是一个id存储在php文件中的类

<强> e.g

< class='del' id=$row['id']>delete

答案 2 :(得分:0)

“好的我正在尝试,你可以向我推荐一些东西或链接来学习使用jquery和php进行删除和更新”

您的SQL语句将与

类似
Delete from *TABLE* where id = ?

你很可能会有一个Delete.php文件,你可以像在New.php中那样运行你的sql查询。 Delete.php将侦听$ _POST或$ _GET变量

如果你在php中使用$ _POST,你的JQuery会有这样的ajax调用

$.ajax('Delete.php?id='+id,{
  success: function() {
   alert('it worked!')
  }
});

或者像你在php中使用$ _GET一样

$.ajax('Delete.php', {
  id: id,
  success: function() {
   alert('it worked!')
  }
});

id将在你的JS中定义,就像我之前提到的那样

$('.del').on('click',function() {
  alert(this.id)
  var id = this.id;
  //$.ajax call goes here
});