SweetAlert2表单验证不会返回

问题描述 投票:0回答:2

尝试将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中选择了提交,我可以用什么来提交表单?

javascript forms validation sweetalert2
2个回答
0
投票

很可能你正试图访问不存在的东西。基于SWAL文档和这篇文章:Response from Sweet-alert confirm dialog你应该尝试做“if(result)”而不是“if(result.value)”。

另外,正如我在上面评论的那样,你应该阅读文档并阅读神奇宝贝的例子,它可能会给你一个提示:sweetalert.js.org/guides/#advanced-examples


0
投票

为您的表单提供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();
  }
});
© www.soinside.com 2019 - 2024. All rights reserved.