0

我正在尝试从 JQuery 中的手风琴中删除一行,然后通过删除来更新我的数据库。到目前为止,手风琴中的行的删除工作正常。然后,我尝试获取已删除行的索引并将其发布回同一页面,以便它可以运行 MySQL 查询以删除数据库中的行,然后从数据库中重新加载手风琴,因为该行已被删除.

我的 JavaScript 是有限的,所以我认为我没有正确传递索引?

谢谢您的帮助。

 <?PHP    
 if(isset($_POST['id'])){
 $id = intval($_POST['id']);
 mysql_query("DELETE FROM `$db_name`.`$tbl_3` WHERE id='$id'");
 unset($_POST['id']);
 header("Location: ".$siteurl."messenger.php");
 }
 ?>


<SCRIPT>
$(function(){
$( "#inbox" ).accordion({
    collapsible: true,
    icons: { "header": "ui-icon-plus", "headerSelected": "ui-icon-minus" },
    active: false
});

$('#myClicker').click(function() {
    var parent = $(this).closest('DIV');
    var head = parent.prev('DIV');
    parent.add(head).fadeOut('slow',function(){$(this).remove();});
            var index = jQuery(this).find("H4").index(ui.newHeader[0]);
    $.post('messenger.php', { id: index }, function(data) {});
});
});


</SCRIPT>

这就是我显示数据库中数据的方式。

<DIV id="inbox">
    <?PHP
      $sql="SELECT * FROM `$tbl_3` ORDER BY id DESC";
      $result = mysql_query($sql);
      while ($row=mysql_fetch_row($result))
      {
    ?>
    <DIV>
        <H4><A href="#"><?PHP echo "".$row[3]."";?></A></H4>
    </DIV>
    <DIV>
        <P><?PHP echo "".$row[4]."";?></P>
        <INPUT type="button" id="myClicker" value="delete"/>
    </DIV>

    <?PHP
    }
    ?>
</DIV>
4

2 回答 2

0

我对这类事情使用完全不同的方法。

我所做的是为我创建一个为我编译手风琴、菜单、表格、div 的 php 函数/文件,当我需要更新它时,我只需通过对生成器的 ajax 调用重新加载容器 div 的内容。

这样我就可以排除所有猜测,只需将一个值传递给 php 脚本。然后这个脚本也可以做数据库的东西。

于 2012-07-26T13:57:29.680 回答
0

尝试这个

    $('#myClicker').click(function() {
    var parent = $(this).closest('DIV');
    var head = parent.prev('DIV');
    var index = parent.prev('DIV').find("H4").index(ui.newHeader[0]);
    parent.add(head).fadeOut('slow',function(){$(this).remove();});

    $.post('messenger.php', { id: index }, function(data) {});
});
});
于 2012-07-26T14:00:59.920 回答