javascript - 如何使用 javascript/jquery 将大的 html block append 到 Blade 文件?

标签 javascript jquery laravel append laravel-blade

通过单击一个按钮,我想使用 javascript/jquery 将一大块 HTML(例如表单) append 到我的 blade 文件中。 这样做的最佳方法是什么?

像这样(只是一部分):

            <div class="form-group col-md-3  ">
                <input placeholder="Váha (kg)" id="package-weight" type="text"
                       class="form-control required {{ $errors->has('package-weight') ? ' is-invalid' : '' }}"
                       name="package-weight" value="{{ old('package-weight') }}">

                @if ($errors->has('package-weight'))
                    <span class="invalid-feedback" role="alert">
                        <strong>{{ $errors->first('package-weight') }}</strong>
                    </span>
                @endif
            </div>

最佳答案

这可以通过 AJAX 请求来完成,如下所示:

$.get("/example", function(data){
  $("body").append(data.html);
}

您的路由 /example 需要关联一个 Controller 或基本函数,以返回包含您要呈现的 HTML 的 JSON 响应:

Route::get("/example", "Controller@example");

public function example(){
  $view = view("example")->render();
  return response()->json(["html" => $view], 200);
}

// OR

Route::get("/example", function(){
  ... // Same $view/return as example()
});

然后,您的 .blade 文件 (example.blade.php) 需要包含您的 HTML。

view()->render()函数立即返回生成的.blade文件的HTML,通过response()->json() 允许您的 JS 函数操作从服务器返回的 html。

关于javascript - 如何使用 javascript/jquery 将大的 html block append 到 Blade 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52668712/

相关文章:

javascript - 带有 json 的日期选择器的具体日期?

authentication - Laravel 5 检查用户是否登录

javascript正则表达式将连续的符号替换为分号

javascript - jQuery Flot 图未加载(JSON 数据)

javascript - 将对象作为innerHTML添加到javascript/jquery中动态创建的div中很困难

javascript - 从循环中的文本数组分页 HTML textarea 内容

javascript - Laravel 5.6 在公共(public)文件夹中添加 javascript 库 "Page not found"

design-patterns - 如何在 Laravel 中为基于用户角色的菜单构建代码?

javascript - Controller 的 emberJS 最佳实践

javascript - 如何保证旧数据在 d3 的退出选择中