Saj*_*wal 6 javascript php ajax model-view-controller laravel-5
我试图使用ajax将objs数组传递给Laravel控制器中的函数.我没有在帖子后收到任何数据.
<script>
var itemCount = 0;
var objs=[];
$(document).ready(function(){
var temp_objs=[];
$( "#add_button" ).click(function() {
var html = "";
var obj = {
"ROW_ID": itemCount,
"STREET_ADDRESS": $("#street_address").val(),
"CITY": $("#city").val(),
"ZIP": $("#zip").val()
}
// add object
objs.push(JSON.stringify(obj));
itemCount++;
// dynamically create rows in the table
html = "<tr id='tr" + itemCount + "'><td>" + obj['STREET_ADDRESS'] + "</td> <td>" + obj['CITY'] + " </td> <td>" + obj['ZIP'] + " </td><td><input type='button' id='" + itemCount + "' value='remove'></td> </tr>";
//add to the table
$("#multiple_table").append(html)
// The remove button click
$("#" + itemCount).click(function () {
var buttonId = $(this).attr("id");
//write the logic for removing from the array
$("#tr" + buttonId).remove();
});
});
$("#submit").click(function() {
$.ajax({
url:'/app/Http/Controllers/Search/search_address',
type: 'POST',
dataType:'json',
contentType: 'application/json',
data: objs
});
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
在我的控制器功能是这样的
public function search_address(){
$data = json_decode($_POST['data'], true);
print_r($data);
}
Run Code Online (Sandbox Code Playgroud)
我想,我有在阿贾克斯的网址有问题,我不知道如何获得一个控制器的URL.
谢谢
小智 1
你能改变一下吗:
$data = json_decode($_POST['data'], true);
Run Code Online (Sandbox Code Playgroud)
到:
$data = json_decode(Input::get('data'));
Run Code Online (Sandbox Code Playgroud)
并确保你有:use Input;高于你的class extends Controller
看看是否有效。
编辑:还要确保您的路线(在Controllers文件夹中)正确。