提交表格前确认

Sah*_*dah 6 html php forms

我创建了一个 PHP 页面以从我的数据库中删除。这个 PHP 页面是表单提交的操作。表格是通过点击“X”标志的图片提交的。如何在提交表单之前要求用户确认并从我的数据库中删除?

这是我的代码:

<form method='POST' action='delete.php'><input type='image' src='images/delete.png' class='del' alt='Submit Form' />
Run Code Online (Sandbox Code Playgroud)

我试图通过将它添加到我的表单标签来内联执行它,但它不起作用:

onsubmit="return confirm('Are you sure you want to submit this form?');"
Run Code Online (Sandbox Code Playgroud)

Que*_*tin 6

来自 OP 的评论:

echo "onclick='return confirm(\'Are you sure you want to submit this form?\');'"
Run Code Online (Sandbox Code Playgroud)

不能在用单引号分隔的属性值中使用单引号。

您的选择是:

在 JS 中使用双引号

echo "onclick='return confirm(\"Are you sure you want to submit this form?\");'"
Run Code Online (Sandbox Code Playgroud)

在 HTML 中使用双引号

echo "onclick=\"return confirm('Are you sure you want to submit this form?');\""
Run Code Online (Sandbox Code Playgroud)

使用实体

echo "onclick='return confirm(&quot;Are you sure you want to submit this form?&quot;);\""
Run Code Online (Sandbox Code Playgroud)

当您将 JavaScript 放入 PHP 字符串中的 HTML 属性值时,您会将三种不同的语言混合在一起,并且您必须非常非常小心地进行转义,以便在正确的时间为正确的语言转义正确的字符.

根据经验,最好将 PHP 字符串的内容保持在最低限度。仅当您有变量时才进入 PHP 模式。

?>
    <form method='POST' action='delete.php'>
        <input type='image' src='images/delete.png' class='del' alt='Submit Form' onclick="return confirm('Are you sure you want to submit this form?');" />
    </form>
<?php
Run Code Online (Sandbox Code Playgroud)

出于同样的原因,最好将 JavaScript 保存在外部文件中,并使用addEventListener而不是onFOO属性附加事件处理程序。