表单未通过AjaxForm / JQuery提交

苏拉夫·德普(Sulav Depp)

有一个显示项目的表,并且每行都有一个“删除”按钮。删除按钮在表单内部。我正在使用AjaxForm方法提交表单。单击删除按钮应该删除数据而不直接进入任何页面或不刷新当前页面。但是会发生的是,表单是按照操作标签上定义的常规方式提交的。

我通过以下方式在表上显示结果:

while($row = $result->fetch_assoc()) 
    {               
    ?>  


<tr>
  <td><?php echo  ++$x; ?></td>
  <td><?php echo $row["id"]; ?></td>
  <td><?php echo $row["title"]; ?></td>
  <td><?php echo $row["author"]; ?></td>
  <td>
  <form method="POST" id='deleteform' class="forms" action="deletebook.php">         
  <input type="hidden" name="deletebook" value='<?php echo $row["id"]; ?>' >
  <button type="submit" class="btn btn-danger btn-xs">Delete</button>
  </form>
  </td>
</tr> 


<?php
    }
}

else
{
    echo "No Books Found!";
}

这将以以下方式显示表格

要通过AjaxForm提交表单,请按照以下步骤操作:(我<table>这里没有显示标签。请原谅。)

<script>
            $(document).ready(function() { 
                $('#deleteform').ajaxForm(function() { 

                    alert("success");

                }); 
                event.preventDefault();
            }); 
    </script>

问题在于表单是通过常规方式提交的。action="deletebook.php"在其他页面中,请信任我,表单是通过AjaxForm提交的。但是在此页面中,出现了问题。

因为每个“删除”按钮都是根据表中内容显示的表单,所以可能会发生这种情况。请帮我。

编辑:问题不在于无法删除数据。该数据之前已经被删除,现在正在被删除。通过将我发送到deletebook.php页面来删除数据我希望删除数据而不将我发送到任何其他页面。

马西奥·冈萨雷斯(Marcio Gonzalez)

尝试这种方式:

while($row = $result->fetch_assoc()) 
    {               
    ?>  


<tr>
  <td><?php echo  ++$x; ?></td>
  <td><?php echo $row["id"]; ?></td>
  <td><?php echo $row["title"]; ?></td>
  <td><?php echo $row["author"]; ?></td>
  <td>
      <input type="hidden" class="hiddenId" value="<?php echo $row["id"]; ?>" />
  <button type="button" class="btn btn-danger btn-xs">Delete</button>
  </td>
</tr> 


<?php
    }
}

else
{
    echo "No Books Found!";
}

?>

<script>
    var id;

$(document).ready(function(){
    $(".btn-danger").click(function(){
        id = $(this).prev().val();
        $.ajax({
            url: "deletebook.php",
            type: 'post',
            data: {
                "deletebook": id
            }
        }).done(function(response){
            $(".hiddenId[value='" + id + "']").parent().parent().remove();
        });
    });
});
</script>

添加:

$('#addbook').ajaxForm(
{ 
    success: function(responseText, statusText, xhr, $form){
        $('#booksuccess').modal('show'); 
        $("#reset").click(); 
        $("tr").last().append(responseText);
    }
}); 

并在您的php add方法中,返回如下字符串:

"<tr><td></td><td>1</td><td>$Title</td><td>$Author</td><td><input type=\"hidden\" class=\"hiddenId\" value=\"$Id\" /><button type=\"button\" class=\"btn btn-danger btn-xs\">Delete</button></td></tr>";

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章