我如何在 JavaScript 中确认某些内容然后使用


How can I confirm something in JavaScript and then use

我有一个表单,当你提交它时,会出现一条JavaScript消息。

$message = "Want to insert?";
echo "<script type='text/javascript'>window.confirm('$message');</script>";

我想做的是,如果这个人点击"确定",它会在数据库中插入值,如果没有,它会取消它。

$titulo = $_POST['titulo'];
$mensagem = $_POST['mensagem'];
$ano = $_POST['ano'];
$mes = $_POST['mes'];
$dia = $_POST['dia'];
$link = " ";

使用<form>标记,并处理 onsubmit 事件。 一旦他点击消息框上的"确定",提交表格。

提交表单后,在服务器端(PHP)编写代码以获取数据(通过GET/POST发送的任何方式)并插入到表中。

简单来说,PHP 首先执行,然后客户端 JavaScript 执行。如果你希望它是交互式的,你必须使用 AJAX,这将允许你发送由 JavaScript 控制的 PHP 命令。

如果我是你,我会这样做:

if (confirm("Are you sure?"))
  $.post("path/to/php.php", {data: you_need_to_send}, function (response) {
    if (response == "OK")
      alert("All Done!");
  });
else
  alert("You cancelled the insertion.");

注意:这里$.post()是 AJAX POST 方法的 jQuery 实现。只是为了便于解释,我给出了这个。请不要因为我回答 JavaScript 问题的 jQuery 方式而对我大喊大叫。


更新

您可以使用表单onsubmit来实现这一点。确保在事件中给出return

<form method="post" action="http://example.com/" onsubmit="return confirm('Are you sure?');">
  <input />
  <input type="submit" value="Send" />
</form>

运行上面的代码片段并检查一下。

您需要使用请求将数据传递到服务器。你不能使用 JavaScript 直接写入你的数据库,因为你已经在使用 PHP

但是要在发送请求之前

确认用户,或者您可以在发送请求之前在 JavaScript 代码中使用它。

if (confirm('Your Message')) {
    // User click OK
    // Send your data to server using a Request
} else {
    // User click cancel
}