javascript - 使用 javascript 确认 php 页面中的选择

标签 javascript jquery ajax

我正在尝试确认删除某些内容,但似乎无法使其正常工作。

当点击“deleteReply”按钮时,我收到一条警报消息,但据我所知没有发生其他情况。我试图简单地回显发布的变量,但它似乎不起作用。

<input type="button" id="deleteSomething" value="Delete" />
<script type="text/javascript">
$(document).ready(function(){
   $('#deleteSomething').click(function() {
      if (!confirm("Are you sure?"))
        return false;
    $.post('deleteProcessing.php', "replyID=" + replyID, function(response) {
        alert(response); 
    });
  });
});
</script>

在我的删除处理页面上,我刚刚

$echo $_POST['replyID'];

最佳答案

你为什么有

if(isset($_POST['deleteReply'])){
?>

在 JavaScript 函数之前?您是否希望根据 $_POST['deleteReply'] var 触发 javascript 代码?

您必须记住,php 在服务器端进行处理并输出 HTML 页面。您的 javascript 代码只有在所有 php 运行完毕后才会在客户端运行。

一个更优雅的解决方案是在发送 AJAX 请求之前要求确认。

而且,您的 ajax 调用似乎没有达到您的预期。您手动设置 2 个参数以发送到 PHP,如果您在服务器端进行确认,则这些参数将没有用处。

参数应该类似于您要删除的回复的回复 ID,并将请求发送到不同的 php 文件进行处理。

我建议您按照 Marian Zburlea 为您所做的那样重写代码。

编辑

好的,如果您想要一个简单的确认窗口,请尝试以下操作:

<input type="button" id="deleteSomething" value="Delete" />

<script type="text/javascript">

$(document).ready(function(){
    $('#deleteSomething').click(function() {
        if (!confirm("Are you sure?"))
            return false;

        $.post('delete.php', "replyID=" + replyID, function(response) {
            alert(response); 
        });
    });
});
</script>

编辑

如果您有多个删除按钮,最好的方法是将 replyID 存储为传递给函数的参数。在 php 中回显删除按钮,如下所示:

echo '<input type="button" value="Delete" onclick="deleteSomething(\'' . $replyID . '\')" />';

这样,$replyID 将存储在页面的 HTML 中,该 HTML 将被传递给您现在必须定义的 deleteSomething(replyID) 函数(最好是在 JQuery 库之后的文档 head 中):

<script type="text/javascript">

function deleteSomething(replyID)
{
    if (!confirm("Are you sure?"))
        return false;
    $.post('deleteProcessing.php', "replyID=" + replyID, function(response) {
        alert(response); 
    });
}
</script>

请注意,我从按钮中删除了 ID,以免生成重复的 ID,并且不再需要它们,因为我在 onclick 中添加了函数调用> 事件,而不是像您之前那样将匿名函数绑定(bind)到其 ID。

关于javascript - 使用 javascript 确认 php 页面中的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10458097/

相关文章:

javascript - 由于菜单原因,链接无法点击

Javascript if else 条件无法正常工作

jQuery AJAX 响应拆分

php - 在网络请求后运行后台进程

ruby-on-rails - 用于更新表的Rails 3 AJAX解决方案?

javascript - 当 document.ready 中的函数完成时执行 js 函数

javascript - Python 将 JavascriptSerializer 转换为日期时间?

javascript - 如何在 Highcharts 的点事件函数中获取图表对象

IE8 中的 JQuery .filter()

javascript - 如何在 typescript 中导入对象而不触发智能感知?