javascript - 确认框 Twig、Symfony 和 Javascript

标签 javascript php symfony

当提交按钮被按下时,我想给用户一个警告,确保他们想要删除一些东西。

到目前为止,我必须这样做

在 Twig 文件中

{{ form_start(form, {'attr': {'id': 'delete_form'}}) }}

在 Javascript 文件中

window.onload = function() {
confirmDelete();
};

function confirmDelete(){
    var el = document.getElementById('delete_form');

if (el) {
    el.addEventListener('submit', function () {
        return confirm('Are you sure you want to delete this question?');
    }, false);
}
else {
    console.log("No form found");
}}

但现在,当点击警报的取消按钮时,数据仍在被删除。

我做错了什么?

最佳答案

您没有阻止提交表单。 如果用户单击是,则在您确认删除时,您将必须触发提交事件,否则什么都不做。

// listen to the submit event
$('#delete_form').on('submit', function(e) {
    // prevent form from being submitted
    e.preventDefault();

    confirmDelete();
});

function confirmDelete() {
    var result = confirm('Are you sure you want to delete this question?');

    // I do not know what result returns but in case that yes is true
    if (result === true) {
        $('#delete_form').submit();
    }
}

关于javascript - 确认框 Twig、Symfony 和 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32565145/

相关文章:

javascript - 如何管理集合中的集合?

javascript - ajax更新数据时无法更新v-for列表

javascript - 运行函数时出现意外输出。输出原型(prototype)代码

javascript - 如何通过条形图的字长设置域?

PHP Mysql错误,将值插入数据库

php - 无法从 php 表单插入

php - 我如何在 PHP 中加入来自两个不同文件夹的两个文本文件?

mysql - Symfony2 多对多关系数据库结构

php - Symfony2 在 Twig 中显示时最小化查询

node.js - 如何使用 Node.js 和 PHP 向单个用户发送实时通知