如何使用 javascript/jquery 将大型 html 块附加到刀片文件?
Posted
技术标签:
【中文标题】如何使用 javascript/jquery 将大型 html 块附加到刀片文件?【英文标题】:How to Append large html block to blade file with javascript/jquery? 【发布时间】:2019-03-11 03:27:19 【问题描述】:通过单击一个按钮,我想使用 javascript/jquery 将一大块 html(例如表单)附加到我的刀片文件中。 最好的方法是什么?
类似这样的东西(只是一部分):
<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>
【问题讨论】:
【参考方案1】:jQuery 是客户端, 刀片是服务器端。
所以...你不能。
但您可以使用 jQuery(当然是客户端)操作刀片的 HTML 结果。
【讨论】:
【参考方案2】:这可以通过 AJAX 请求来完成,如下所示:
$.get("/example", function(data)
$("body").append(data.html);
您的路由 /example
需要关联一个控制器或基本函数,以返回包含您要呈现的 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/jquery 将大型 html 块附加到刀片文件?的主要内容,如果未能解决你的问题,请参考以下文章