繁体   English   中英

为什么函数在控制台中返回完整的html代码。 如何只返回数据(div块)?

[英]Why function return full html code in console. How return only data(div block)?

为什么函数在控制台中返回完整的html代码。 如何只返回数据(div块)?

HTML如何仅此块返回数据

<div class="message_box">
    @foreach(json_decode($message) as $content)
        {{ $content->message }}
    @endforeach
</div>

AJAX

$(function () {
   $.get('chat', function(data){
      console.log(data);
   });
});

调节器

public function chat()
{
    $user = User::all();
    $message = MessageModel::orderBy('id')->get();
    return view('chat.chat', ['user' => $user, 'message' => json_encode($message)]);
}

结果prtscreen 在这里

This problem occurs when you extend layout

如果您使用的是Laravel 5 ,则应在视图中检查刀片文件中是否有@extend指令,或者如果使用的是Laravel 4 ,则还应检查控制器是否具有$layout属性

在这里,您将返回html

return view('chat.chat', ['user' => $user, 'message' => json_encode($message)]);

现在,如果您想将其作为JSON response返回,则呈现HTML,然后将响应作为这样的数组返回

return ['html' => view('chat.chat', ['user' => $user, 'message' => json_encode($message)])->render()];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM