[英]How to create a confirm box with Twig and Symfony2 to redirect the user to page
当按下删除按钮时,我想要弹出警报以确保用户没有犯错。
所以,在codeIgniter中我有这个效果很好:
按钮:
<td><a class='Right btn btn-danger' onClick="ConfirmMessage('news', <?php echo $new->id ?>,'news')">
<i class="icon-remove-sign icon-white"></i>
</a></td>
使用Javascript:
function ConfirmMessage(type, id, types) {
if (confirm("Are you sure you want to delete this "+type+" ?")) { // Clic sur OK
document.location.href='<?php echo site_url(); ?>/'+types+'/delete/'+id;
}
}
但现在,使用Symfony2,我不能这样做:
按键
<td><a class='Right btn btn-danger' onClick="ConfirmMessage('artist', {{ artist.id }},'news')">
<i class="icon-remove-sign icon-white"></i>
</a></td>
使用Javascript
function ConfirmMessage(type, id, types) {
if (confirm("Are you sure you want to delete this "+type+" ?")) { // Clic OK
document.location.href="{{ path('ymtest_Delete'"+types+", {'id': "+id+"}) }}";
}
}
因为Symfony想要生成一个url时出错。
什么可以解决方案? 谢谢
你不能写
document.location.href="{{ path('ymtest_Delete'"+types+", {'id': "+id+"}) }}";
你正在混合twig函数和javascript函数。 Twig将在后端进行解析和编译.Javascript将在收到html页面后在您的客户端执行
您必须生成每个url类型并将其分配给javascript变量。
更优雅的方法是将您的URL和消息存储在数据属性中
<a class="Right btn btn-danger" data-url="{{ path('ymtest_EditMusician', {'id': artist.id}) }}" data-message="Are you sure you want to delete this type ?" ></a>
您现在可以使用javscript绑定事件单击并检索数据属性值。 没有更多的javascript测试
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.