Php 使用ajax调用的Laravel
在我的blade中,我使用ajax调用来调用路由。在我的控制器中,我返回一个不同的视图。然而,这种观点并没有改变。我想知道我是否需要改变视图,因为我使用的是一个需要返回成功与否的ajax调用 以下是我的刀片服务器中的ajax代码:Php 使用ajax调用的Laravel,php,jquery,ajax,laravel,Php,Jquery,Ajax,Laravel,在我的blade中,我使用ajax调用来调用路由。在我的控制器中,我返回一个不同的视图。然而,这种观点并没有改变。我想知道我是否需要改变视图,因为我使用的是一个需要返回成功与否的ajax调用 以下是我的刀片服务器中的ajax代码: $('#btnAnalyze').click(function(){ var text = $('#cv').val(); $.ajaxSetup({ header
$('#btnAnalyze').click(function(){
var text = $('#cv').val();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
url: "/widget/measurableresults",
data: {
text: text,
},
success: function (msg) {
console.log("Success");
},
error: function (msg) {
console.log(msg);
}
});
});
这是我的路线
Route::post('/widget/measurableresults', 'WidgetController@measurableresults');
下面是我的控制器中的方法:
public function measurableresults()
{
$text = Input::get('text');
Log::debug( $text );
return view('results.measurableresults');
}
调试输出$text的值,ajax调用返回success。但是,视图不会更改为results.measureableresults。我缺少什么?尝试删除行日志::debug$text;,它可能阻止了要执行的return语句
使现代化
您似乎不了解ajax和php通信中的工作原理,您收到的成功代码并不意味着ajax返回了预期的值,如果您记录ajax响应,您将在返回的视图中获得html文本,这并不是说ajax会神奇地为您更改视图
请对此进行更多研究。我已经尝试删除Log::debug。我想dd会停止return语句的执行,Log::debug不使用window.location.href,然后将视图的url传递给ajax的响应。@aldrin27,你能给我一个例子吗?正如Tosin John所指出的,你返回的是html,但你没有用它做任何事情。我认为您缺少AJAX背后的理论。您需要在ajax成功函数中更新DOM。