尝试将SweetAlert2与表单发送确认一起使用。但无论我尝试什么,我都无法让它发挥作用。
Swal.fire({
title: err_msg,
//html: strCEmail,
text: 'hello',
type: 'question',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, send it!'
}).then((result) => {
if (result.value) {
// xxxxxxxxxxxxxxxxxxxx
}
});
代码达到xxxxxxxxxxxxx罚款,但无论我放在那里都不会触发表单提交。
我已经尝试过显而易见的事了
return true;
但那没用。经过一番挖掘后,我发现了一个提交表格的建议:
document.forms["myform"].submit();
或form.submit();
哪个没用。
那么......一旦用户在SweetAlert2中选择了提交,我可以用什么来提交表单?
很可能你正试图访问不存在的东西。基于SWAL文档和这篇文章:Response from Sweet-alert confirm dialog你应该尝试做“if(result)”而不是“if(result.value)”。
另外,正如我在上面评论的那样,你应该阅读文档并阅读神奇宝贝的例子,它可能会给你一个提示:sweetalert.js.org/guides/#advanced-examples
为您的表单提供id
<form action="your-action" method="post" id="my_form">
在js中:
Swal.fire({
title: err_msg,
text: 'hello',
type: 'question',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, send it!'
}).then((result) => {
if (result.value) {
$(document).find('#my_form').submit();
}
});