Laravel 8:有没有办法在警报框中显示默认表单错误消息

Posted

技术标签:

【中文标题】Laravel 8:有没有办法在警报框中显示默认表单错误消息【英文标题】:Laravel 8: Is there any way to show default form error messages inside of alert box 【发布时间】:2021-03-08 07:44:14 【问题描述】:

假设我有一个这样的登录表单:

<form method="POST" action=" route('login') ">
    @csrf
    <div class="field">
        <span class="fas fa-user"></span>
        <input type="email" name="email" required>
        <label style="right:0;">Email</label>
        @error('email')
            <script type="text/javascript">
            alert('Something went wrong');
            </script>
        @enderror                   
    </div>
    <div class="field">
        <span class="fas fa-lock"></span>
        <input type="password">
        <label style="right:0;">Password</label>
        @error('email')
            <script type="text/javascript">
            alert('Something went wrong');
            </script>
        @enderror
    </div>
    <button>Login</button>
</form>

如您所见,我设置了一个 Javascript 警报框来显示错误消息:

@error('email')
    <script type="text/javascript">
        alert('Something went wrong');
    </script>
@enderror

现在我不想写 Something went wrong,而是想设置 Laravel 默认消息,即 $message

但问题是,当我这样做时,它不起作用!

那么有什么方法可以在 Javascript 警告框内显示此 $message 吗?

【问题讨论】:

如果您想将错误显示为警报,那么我建议您将所有js代码放在html页面的底部。你可以这样做alert(' $message '); 作为高级,您可以使用github.com/yoeunes/toastr 显示错误、警告、危险等消息。 fyi,你有两次@error('email'),最后一个应该是密码。而你的&lt;input type="password"&gt; 没有name 属性 【参考方案1】:

要将错误消息集成到 HTML 代码或 JS 代码中,您应该使用花括号,例如:

alert(message);

但是我建议使用像 sweet alert 这样的库来完成这项工作。

【讨论】:

我已经用过:***.com/questions/64732894/… 那么问题出在哪里?如果您确保这三个步骤做得好,它应该可以正常工作:1)确保将甜蜜警报添加到您的项目中。 2) 使用SweetAlert::message('Message', 'Optional Title');在您的控制器中,当您返回错误时。 3) 在刀片中使用@include('sweet::alert')。有关甜蜜警报使用的更多信息,请阅读文档。

以上是关于Laravel 8:有没有办法在警报框中显示默认表单错误消息的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在 Laravel 8 中显示最新的博客文章? [关闭]

如何使用 ionic 2 框架在警报框中显示选定的索引值

本地通知默认不显示在通知中心

如何在 Javascript 的警报/确认框中显示图像?

在警报框中显示复选框值

在 laravel 8 的侧边栏中显示记录数