【问题标题】:How does the javascript confirm work?javascript确认如何工作?
【发布时间】:2014-10-27 20:16:42
【问题描述】:

假设我有这样输入的表单:

<input type="submit" value="Delete" onclick="return window.confirm('Are u sure?');"/>

这是我的问题,它是如何工作的?当我在对话框中单击“删除”然后单击“取消/否”时,不会调用删除操作,但为什么呢?我知道在我们单击删除输入后,将引发事件 onclick,但不明白为什么它会停止引发表单操作。 window.cofirm 方法在哪里返回布尔值以便停止调用表单操作?

【问题讨论】:

  • 单击“取消”会使confirm() 向您的onclick 处理程序返回false,从而阻止默认操作(提交)。
  • OK 返回 true,cancel 返回 false,并没有变得更简单。返回的 false 值取消了提交按钮的点击事件。

标签: javascript html


【解决方案1】:

基本上,如果您在任何事件处理程序中返回“false”,它会阻止事件的默认操作发生。返回“true”允许它继续。由于 Confirm 函数在单击 OK 时返回 true,否则返回 false,它会阻止表单提交,除非单击 OK。

【讨论】:

  • 谢谢,我知道 true/false 将被返回,但不知道之后例如这样的 false 会做什么,现在我看到“false 阻止默认操作发生”,谢谢 :)
【解决方案2】:

当您在确认框中单击取消时,您的代码如下:

onclick="return window.confirm('你确定吗?');"

转换成

onclick="return false;"

停止表单提交。

【讨论】:

    【解决方案3】:
    result = window.confirm(message);
    
    • message 是要在对话框中显示的可选字符串。
    • result 是一个布尔值,表示选择了 OK 还是 Cancel (true 表示 OK)。

    ——Mozilla Developer Network

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-30
      • 2018-08-08
      相关资源
      最近更新 更多