[英]How to apply a JS variable to a Laravel Form Action
我需要將AJAX變量傳遞到我的視圖中,以便正確執行form action
。 使用Laravel 5.4。 我的(縮寫)視圖如下所示:
<div id="product_form" class="form-horizontal">
{{ Form::open(['action' => 'ProductController@update_product', // PRODUCT_ID MUST GO HERE]) }}
<div class=" form-group">
<div class="col-sm-2 col-md-2">{{ Form::label('product_name', 'Product Name:') }}</div>
<div class="col-sm-4 col-md-4">{{ Form::text('product_name',null) }}</div>
<div class="col-sm-2 col-md-2">{{ Form::label('product_id', 'Product Code') }}</div>
<div class="col-sm-4 col-md-4">{{ Form::text('product_id', null) }}</div>
</div>
我的Ajax函數將所有值正確地傳遞到表單字段中,但是我正在努力將product_id
放入action語句中的正確位置。 Laravel希望看到一個變量。
Ajax代碼(縮寫):
select: function( event, ui ) {
var product_id = ( ui.item.value );
$.ajax({
url: "product_fullsearch/"+product_id,
dataType: "json",
type:"GET",
success: function (data) {
$('#product_name').val(data[0].product_name);
$('#product_id').val(data[0].product_id);
$("#supplier_name").val(data[0].supplier_name);
$("#supplier_id").val(data[0].supplier_id);
}
});//END AJAX
}
我看到此Pass JS變量在SO 上形成動作 ,並使其通過,但我無法使其在Laravel上下文中工作。
我在做什么錯? 非常感謝 !
我想到了另一種解決問題的方法:
我沒有嘗試將變量傳遞到form action
,而是更改了Route,使其不再需要id
。 然后在控制器中,我像這樣從$request
數組中簡單地提取id
值:
$id = $request->product_id;
我這樣更新工作:
$id = $request->product_id;
Product::updateOrCreate(array('product_id' => $id),
array(
'product_name' => $request->product_name,
'product_id'=>$id,
));
我希望這可以幫助其他人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.