[英]How to insert modal values into db using ajax post request?
查看代碼:
<div class="price">
<form name="priceform" >
<div class="modal fade" id="price">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span
aria-hidden="true">×</span><span class="sr-only">Close</span>
</button>
<h4 class="modal-title">Selling Information</h4>
</div>
<div class="modal-body" id="modal-content">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<div class="row">
<div class="col-sm-12">
<b>Listing Information</b>
<h6>Seller SKU ID <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Unique identifier
for the listings">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="skuid" id="skuvalue" class="pricevalue"/>
</div>
</div>
<br/>
<br/>
<div class="row">
<div class="col-sm-12">
<b>Status Details</b>
<h6>Listing Status <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Inactive listings
are not available for buyers on Flipkart">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<select id="dropDownId" name="listingStatus">
<option selected disabled>--Choose here--</option>
<option value="Active">Active</option>
<option value="Inactive">Inactive</option>
</select>
</div>
</div>
<br/>
<br/>
<div class="row">
<b>Price Details</b>
<div class="col-sm-12">
<div class="col-sm-6">
<h6>MRP <a href="#" class='my-tool-tip' data-toggle="tooltip"
data-placement="right" title="Maximum retail price of the
product">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="mrp" id="mrpvalue" class="check-fill"/>
</div>
<div class="col-sm-6">
<h6>Your Selling Price <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Price at which
you want to sell this listing">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="selprice" id="selpricevalue"
class="check-fill"/>
</div>
</div>
</div>
<br/>
<br/>
<div class="row">
<b>Inventory Details</b>
<div class="col-sm-12">
<div class="col-sm-6">
<h6>Fulfilment By <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Fullfilment of
FA listings will be managed by Flipkart ">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<select id="5" name="fulfillment">
<option selected disabled>Choose here</option>
<option value="Seller">Seller</option>
</select>
<br/>
<h6>Procurement SLA <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Time required
to keep the product ready for dispatch">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="sla" class="check-fill"/>Days
<br/>
<h6>Stock available for Buyers <a href="#" class='my-tool-
tip' data-toggle="tooltip" data-placement="right" title="Number
of items available for cutomer to buy after detecting pending
orders" >
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="available" readonly/>
</div>
<div class="col-sm-6">
<h6>Procurement Type <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Information on
how the inventory is procured by the seller to fulfill an
order">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<select name="procurementType">
<option selected disabled>--Choose here--</option>
<option value="instock">instock</option>
</select>
<br/>
<h6>Stock <a href="#" class='my-tool-tip' data-toggle="tooltip"
data-placement="right" title="Number of items you have in
stock">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="stock" />
<br/>
</div>
</div>
</div>
<br/>
<br/>
<div class="row">
<b>Delivery charge to customer</b>
<div class="col-sm-12">
<div class="col-sm-4">
<h6>Local Delivery Charge <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Delivery charge
you want charge a buyer in the same city for listings which are
not Flipkart Assured">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="local" />
</div>
<div class="col-sm-4">
<h6>Zonal Delivery Charge <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Delivery charge
you want charge a buyer in the same zone for listings which are
not Flipkart Assured">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="zonal" />
</div>
<div class="col-sm-4">
<h6>National Delivery Charge <a href="#" class='my-tool-tip'
data-toggle="tooltip" data-placement="right" title="Delivery
charge you want charge a buyer outside your zone for listings
which are not Flipkart Assured">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="national" />
</div>
</div>
</div>
<br/>
<br/>
<div class="row">
<b>Packaging Details</b>
<div class="col-sm-12">
<div class="col-sm-3">
<h6>Package Weight <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Weight of the
final package in kgs">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="weight" />Kgs
</div>
<div class="col-sm-3">
<h6>Package Length <a href="#" class='my-tool-tip' data-
final package in cms">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="length" />cms
</div>
<div class="col-sm-3">
<h6>Package Breadth <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Breadth of the
final package in cms">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="breadth" />cms
</div>
<div class="col-sm-3">
<h6>Package Height <a href="#" class='my-tool-tip' data-
toggle="tooltip" data-placement="right" title="Height of the
final package in cms">
<span class="glyphicon glyphicon-info-sign"
style="color:#337AB7"></span>
</a></h6>
<input type="text" name="height" />cms
</div>
</div>
</div>
<br/>
<br/>
<div class="row">
<div class="col-sm-12">
<b>Tax Details</b>
<h6>HSN <a href="#" class='my-tool-tip' data-toggle="tooltip"
data-placement="right" title="code of your product for
determining applicable tax rates">
<span class="glyphicon glyphicon-info-sign" style="color:
#337AB7"></span>
</a></h6>
<input type="text" name="hsn" />
<a href="#">Find relevant HSN codes</a>
</div>
</div>
<br/>
<br/>
<input type="submit" id="priceSave" class="save" value="Save"
style="border-radius: 8px; padding: 5px 15px; ">
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-info" data-
dismiss="modal">Close</button>
<!--<button type="submit" id="priceSave" class="save"
style="border-radius: 8px; padding: 5px 15px;
display:none;">Save</button>-->
</div>
<div>
<!-- /.modal-content -->
</div>
<div>
<!-- /.modal-dialog -->
</div>
這是我的引導模式,我需要將這些表單值添加到db中。 為此,我一直在使用ajax發布請求。問題是,如果我注釋了表單標簽,則URL重定向可用於ajax發布請求。 但是由於表單的注釋,未添加值。 但是,如果包含,則不會發生插入。
腳本代碼:
<script src =
"https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function () {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$("#priceSave").click(function(){
$.ajax({
url: 'addPriceDetails/{{$dataId}}',
type: "post",
/*success:function(data) {
alert(data);
}*/
});
});
});
</script>
這是我嘗試過的腳本。
路線代碼:
Route::post('addPriceDetails/{dataId}','priceDetails@addPriceDetails');
控制器:
public function addPriceDetails(Request $priceform,$dataId)
{
//echo ("1234");
$priceInfo = new priceInfo ;
$priceInfo->deviceCategoryId=$dataId;
$priceInfo->productId=$this->getproductId();
$priceInfo->SKUID =$priceform->input('skuid');
$priceInfo->listingStatus =$priceform->input('listingStatus');
$priceInfo->MRP =$priceform->input('mrp');
$priceInfo->sellingPrice=$priceform->input('selprice');
$priceInfo->fulfillmentBy =$priceform->input('fulfillment');
$priceInfo->procurementType =$priceform->input('procurementType');
$priceInfo->procurementSLA =$priceform->input('sla');
$priceInfo->stock =$priceform->input('stock');
$priceInfo->localDelCharge =$priceform->input('local');
$priceInfo->zonalDelCharge =$priceform->input('zonal');
$priceInfo->nationalDelCharge=$priceform->input('national');
$priceInfo->packWeight =$priceform->input('weight');
$priceInfo->packLength =$priceform->input('length');
$priceInfo->packBreadth =$priceform->input('breadth');
$priceInfo->packHeight =$priceform->input('height');
$priceInfo->HSN =$priceform->input('hsn');
$priceInfo->save();
//echo($priceInfo->SKUID);
return Redirect::back()->with('SKUID',$priceInfo->SKUID)-
>with('listingStatus',$priceInfo->listingStatus)-
>with('MRP',$priceInfo->MRP)->with('sellingPrice',$priceInfo-
>sellingPrice);
}
這里是控制器代碼,用於將模式值插入db,還將某些值重定向到視圖
嘗試使用以下代碼來實現addPriceDetails()
方法。 這不是解決方案。
.
.
.
$priceInfo->save();
if(!$priceInfo){
App::abort(500, 'Error');
}
else {
return Redirect::back()->with('SKUID',$priceInfo->SKUID)->with('listingStatus',$priceInfo->listingStatus)->with('MRP',$priceInfo->MRP)->with('sellingPrice',$priceInfo->sellingPrice);
}
您的Javascript沒有從表單發送任何數據。 您需要收集這些內容,並將其發布到您的AJAX調用中,如下所示:
在您的Javascript中
$("#priceSave").click(function(e){
e.preventDefault();
var data = $('form').serialize();
$.ajax({
url: 'addPriceDetails/{{$dataId}}',
type: "post",
data: data,
dataType: 'json',
success: function(response) {
alert(response.SKUID);
}
});
});
在您的控制器中
public function addPriceDetails(Request $priceform,$dataId) {
// ... all your code
return response()->json([
'SKUID' => $priceInfo->SKUID,
'listingStatus' => $priceInfo->listingStatus
// ... any other fields you want to return
]);
我不確定為什么要返回剛剛回發的某些字段。 返回操作結果(例如成功或錯誤),然后將其顯示在前端會更有意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.