带确认对话框的{onclick按钮事件

时间:2016-01-22 03:43:18

标签: javascript php smarty

此代码来自PHP软件(使用Smarty模板引擎),它可以工作:

    <input type=\"button\" class=\"btn btn-primary\" value=\"{$LANG["phrase_send_email"]}\" onclick=\"ms.edit_submission_page_send_email($submission_id); this.disabled=true;\" />";

用户点击按钮,软件将:

  • 向收件人发送电子邮件
  • 该按钮被禁用,以防止多次通过意外点击多次发送电子邮件

我希望它能做得更多:添加一个弹出确认对话框。目的是通过在发送电子邮件之前阅读确认对话框中的文本消息来提醒人们先做一些事情。

因此,如果用户单击“确定”:

  • 执行按钮功能
  • 禁用按钮

或者如果用户取消:

  • 对话框取消,不执行任何电子邮件功能。返回屏幕。

有很多JavaScript if else / confirm 示例。但我是JavaScript的新手,并且不知道 ms.edit_submission_page_send_email($ submission_id)如何适合JavaScript世界。

如何将所有这些都放入JavaScript函数中?

1 个答案:

答案 0 :(得分:0)

试试这种方式。

<input type=\"button\" class=\"btn btn-primary\" value=\"{$LANG["phrase_send_email"]}\" onclick=\"{literal}return checkValidMailSend(this, $submission_id){/literal}\" />";

{literal}
<script>
function checkValidMailSend(this, submissionid) {
    if(!confirm("Are you sure to send mail?")) {
        return false;
    }
    else {
        ms.edit_submission_page_send_email(submissionid);
        this.disabled=true;
    }
}
</script>
{/literal}