为什么使用javascript不能使用此警报?

时间:2019-03-04 03:04:50

标签: javascript html asp.net alert sweetalert

我正在使用ASP.NET,并且在视图上有这样的代码,如果我在功能正常的外部使用了甜蜜警报,并且如果将甜蜜警报更改为常规警报,它也可以工作,但是它不能像下面的代码那样工作。 (我在视图中也有带有库的脚本)

<input type="submit" value="Create" class="btn btn-default" onclick="return foo();" />

<script type="text/javascript">      
       function foo() {
       swal("Good job!", "You clicked the button!", "success")
       return true;
    }
</script>

2 个答案:

答案 0 :(得分:3)

好的,您忘记了包含库js和CSS

    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
    
    
    


<input type="submit" value="Create" class="btn btn-default" onclick="return foo();" />

<script type="text/javascript">      
       function foo() {
       swal("Good job!", "You clicked the button!", "success")
       return true;
    }
</script>

答案 1 :(得分:3)

当您单击提交按钮时,它正在提交一个表单。

在收到警报时,它将阻止浏览器,因此代码将一直等到您按下“确定”并提交表单。但是当您使用甜蜜警报时,您无法阻止浏览器操作。因此,您必须取消点击并手动提交表单。

// called onclick of the submit button
function foo() {
  swal("foo")
    .then(function() {
      // manually submit the form
      document.getElementById("yourFormId").submit()
    });
  return false; // cancel the button click
}
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>

<form id="yourFormId">

  <input type="submit" value="Create" class="btn btn-default" onclick="return foo();" />

</form>