如何解决sweetalert在Django模板上不起作用
我从下面的代码开始,将ID发送到删除模型对象的方法,但是始终发送第一个ID。
这是我的HTML和JavaScript代码:
{% for yad in yads %}
<form action="{% url 'del-yadd' %}" method="post" id="myform">
{% csrf_token %}
<button type="button" name="yidd" value="{{yad.id}}" id="btndelme" class=" btn btn-danger" onclick="
swal({
title: 'warning!',text: 'do you want to delete?',type: 'warning',showCancelButton: true,confirmButtonColor: '#3085d6',cancelButtonColor: '#d33',cancelButtonText:'no',confirmButtonText: 'yes'
},function(isConfirm) {
if (isConfirm) {
document.querySelector('#myform').submit();
}});
">delete</button>
</form>
{% endfor %}
这是我的Django视图代码: def delete_yadd(请求): id = request.POST ['yidd'] yad = Yadd.objects.filter(id = id).delete() 返回redirect('home')
解决方法
您的 SweetAlert 没有显示的原因是因为它需要使用 javascript 函数在 html 文档的末尾附近被调用。我改变的是你调用sweetalert函数的方式,如下所示:
{% for yad in yads %}
<form action="{% url 'del-yadd' %}" method="post" id="myform">
{% csrf_token %}
<button type="button" name="yidd" value="{{yad.id}}" id="btndelme" class=" btn btn-danger" onclick="confirm()"></button>
</form>
{% endfor %}
<script>
function confirm() {
swal({
title: 'warning!',text: 'do you want to delete?',icon: 'warning',showCancelButton: true,confirmButtonColor: '#3085d6',cancelButtonColor: '#d33',cancelButtonText: 'no',confirmButtonText: 'yes'
},function (isConfirm) {
if (isConfirm) {
document.querySelector('#myform').submit();
}
})
}
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。