如何在页面上显示对话框?


在本文中,我们将学习如何使用 dialog HTML 标签在页面上显示对话框。

对话框可以作为向用户提供反馈或提示用户输入的有用工具。HTML 的 <dialog> 元素提供了一种在网页上显示对话框的简便方法。<dialog> 元素并非所有浏览器都支持,但可以使用 JavaScript 进行 polyfill 以支持旧版浏览器。

让我们通过一些示例了解如何在网页上实现对话框。

示例 1

在此示例中,我们将创建一个 id 为 "my-dialog" 的 HTML <dialog> 元素。在 <dialog> 元素内,我们将添加标题、一些内容和关闭按钮。我们还将添加一个 id 为 "open-dialog" 的 <button> 元素,单击该元素将打开对话框。

在 JavaScript 代码中,我们将使用 showModal() 方法在单击“打开对话框”按钮时显示对话框。我们还将向“关闭”按钮添加一个事件监听器,该监听器将在单击时使用 close() 方法关闭对话框。

文件名:index.html

<html lang="en">
<head>
   <title>How to display a dialog box in the page?</title>
</head>
<body>
   <h3>How to display a dialog box in the page?</h3>
   <button id="open-dialog">Open Dialog</button>

   <dialog id="my-dialog">
      <h2>Dialog Box Title</h2>
      <p>Dialog Box Content</p>
      <button id="close-dialog">Close</button>
   </dialog>

   <script>
      const openButton = document.getElementById('open-dialog');
      const dialog = document.getElementById('my-dialog');
      const closeButton = document.getElementById('close-dialog');

      openButton.addEventListener('click', () => {
         dialog.showModal();
      });

      closeButton.addEventListener('click', () => {
         dialog.close();
      });
   </script>

</body>
</html>

示例 2

在此示例中,我们将遵循上述代码模式,并使用 window prompt 和 confirm API 显示对话框。

文件名:index.html

<html lang="en">
<head>
   <title>How to display a dialog box in the page?</title>
</head>
<body>
   <h3>How to display a dialog box in the page?</h3>
   <button onclick="showPrompt()">Open Dialog using prompt</button>
   <button onclick="showPrompt()">Open Dialog using confirm</button>

   <script>
      function showPrompt() {
         const result = prompt("Enter your name:");
         if (result !== null) {
            alert("Hello, " + result + "!");
         }
      }

      function showConfirmation() {
         const result = confirm("Are you sure you want to delete this item?");
         if (result === true) {
            alert("Item deleted successfully!");
         } else {
            alert("Deletion canceled.");
        }
      }
   </script>
</body>
</html>

结论

在本文中,我们学习了如何使用原生的 dialog HTML 元素及其 showModal 和 close 方法在网页上显示对话框。在第一个示例中,我们创建了一个基本的对话框,在第二个示例中,我们使用了 window confirm 和 prompt API。对话框有很多实际用途,例如确认对话框、信息显示对话框或信息收集对话框。它们还可以用于登录或身份验证目的。例如,当用户单击“登录”按钮时,可能会出现一个对话框来收集其凭据,从而提供更集中和直观的登录体验。

更新于:2023年8月2日

1K+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告