【问题标题】:How to keep my Materialize modal open if validation failed?如果验证失败,如何保持我的 Materialize 模式打开?
【发布时间】:2017-09-16 17:54:50
【问题描述】:

我正在使用 LaravelMaterialize CSS。我在模态中制作了一个简单的注册表单。当我单击 Submit 按钮时,模式关闭并且错误显示在页面上的下一个 div 中。重新打开后,我可以看到模态框上的错误。如果验证失败,如何保持模式打开?

【问题讨论】:

  • 你在用jquery吗?
  • 我不知道 jQ 或 MCSS 是如何做到的,只是寻找他们的 JS 方法。只需将.close() 放在else 之前。你说如果IsSignedIn,比如那么 close

标签: javascript jquery laravel materialize


【解决方案1】:

感谢 laravel 的 $errors 变量,您可以检查验证是通过还是失败。 您可以使用if/else 来检查它是否失败并添加脚本以打开模式

@if($errors->any())
<script>
$('#myModal').modal('show'); 
</script>
@endif

注意:这需要使用jquery

【讨论】:

  • 您好,感谢您的帮助,我试过这个它不起作用未捕获的错误:方法显示在 jQuery.modal 上不存在。我尝试使用 'open' 并得到 Uncaught TypeError: Cannot read property 'open' of undefined 。我在所有刀片中尝试了代码,并确保所有其他 js 首先加载仍然没有。我是初学者,也许我错过了一些东西。我会坚持的
  • 您是否将#mymodal 替换为您的模态ID?
  • 是的,我确实 .modal('open') 在我的 js 文件中工作,但在加载时弹出它打开
  • 您的意思是加载时弹出模式...有或没有错误?
  • 如果我使用 $('#modal1').modal('open');而不仅仅是 $('#modal1').modal();在我的 Js 文件中,它会在窗口加载时打开模态,直到我关闭它。但是当验证像以前一样错误时它不会关闭。一个好兆头 :) 也许我会在这附近找到一些东西。
【解决方案2】:

嘿,我明白了,谢谢你的帮助!

@if($errors->any())
   <script type="text/javascript">

   $(document).ready(function() {

    $('#myModal').modal('open');
    });

   </script>
@endif

【讨论】:

    猜你喜欢
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    • 2014-05-10
    • 1970-01-01
    相关资源
    最近更新 更多