【问题标题】:Assign JavaScript function to submit button, which should execute conditionally将 JavaScript 函数分配给提交按钮,该按钮应有条件地执行
【发布时间】:2012-08-22 03:03:48
【问题描述】:

我有一个带有一个隐藏输入字段和一个提交按钮的简单表单。当用户单击提交按钮时,我希望它首先运行带有 confirm() 函数的 JavaScript 函数。根据用户是点击“确定”还是“取消”,我希望表单提交或不提交。 如何成功地将点击功能分配给提交按钮,并使其按上述方式工作?

function confirmDelete() {
var del = confirm("Are you sure you wish to delete this post?");

if (del)
  //continue and submit the form
else
  //the form should not be submitted
}

这是表格:

<form action="/delete/" method="post">
<input type="hidden" name="path" value="'.$path.'" />
</form>

我意识到我可以完全放弃表单,只需将隐藏变量作为 GET 变量传递给 /delete/ 页面,但出于安全原因,我更喜欢使用 POST 变量。

【问题讨论】:

    标签: javascript post get form-submit onsubmit


    【解决方案1】:

    这就足够了:

    <input type="submit" value="Delete" onClick="return confirm('Are you sure?');" />
    

    【讨论】:

    • 这很好用,谢谢!介意解释一下 onclick 中的返回对提交操作的执行有什么影响吗?是否让 onclick="return false" 停止运行任何进一步的代码?
    • return false; 在任何事件处理程序中都会阻止事件的默认操作发生。 return true; 允许它继续。因为confirm在点击OK时返回true,否则false在这种情况下工作得很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-13
    • 2021-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-05
    相关资源
    最近更新 更多