【问题标题】:Toastr with AJAX带有 AJAX 的烤面包机
【发布时间】:2013-12-13 14:01:19
【问题描述】:

我正在尝试从通过 AJAX 检索的 JSON 中获取 toastr 消息以显示。这必须能够更改警报的类型及其内容。我对 JSON 不太聪明,在阅读了一段时间之后,我仍然不知道从哪里开始。有什么指点吗?

阿贾克斯:

 function ping(data1)
    {
        $.ajax({
           type: "POST",
           url: "bridge/ping.php",
           data: "var1="+data1,
           success: 
        }
     });

烤面包机:

          toastr.success("Message here","Title here)

【问题讨论】:

  • 你从服务器发回什么数据?
  • 我希望发回一些 toastr 消息,类型为:msg: 和标题:
  • 你能贴出实际的 PHP 代码吗?
  • 我还没有写任何东西,我首先需要了解如何将 JSON 解析为 Toastr 通知。一旦我能做到这一点,我就会知道从服务器发送什么。这将是一个简单的 JSON 字符串
  • 为什么不只是toastr.success(data.message, data.title)

标签: javascript json toastr


【解决方案1】:

基本上在您的 PHP 端,您将发送回一个编码的 JSON,例如:

$arr = array('message' => 'your message here', 'title' => 'your title here');
echo json_encode($arr);

现在,在您的客户端上,您编写 success

success: function(data) {
    toastr.success(data.message, data.title);
}

【讨论】:

  • 谢谢,有没有一种简单的方法可以根据 JSON 中的字符串数量生成多个 toastr 通知?
  • 是的,在 JSON 中返回一个消息数组,然后遍历它们并使用 toastr
【解决方案2】:

看看我的问题:在 JSON 数组中,将“t”替换为不同的 toast 类型 ['info']、['warning']、['success'] 等。然后,解析 JSON 以适合 John Papa's回答。

Using timeouts with toastr

【讨论】:

    【解决方案3】:

    我是这样使用的。效果很好。

    服务器

    $message = array('message' => 'Success!', 'title' => 'Updated');
    return response()->json($message);
    

    客户

    success:function(data){
      setTimeout(() => {
      toastr.success(data.message, data.title);
      },500)
    },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-29
      • 1970-01-01
      • 2018-05-24
      • 2018-05-12
      相关资源
      最近更新 更多