[英]How to post form using ajax in popup without reload page in laravel
[英]How to reload the content of my page with ajax (Using Laravel View/Layout)
我正在使用Laravel 4,
我想重新加載視圖並更改內容(基本上更改語言)
當我到達索引時:在我的控制器上:
public function getIndex()
{
$lang = $this->retrieveLang("FR");
$this->layout->content = View::make('cv.cv', array('lang' => $lang));
}
內容擴展了布局
@extends('layout.cvlayout')
@section('content')
我的ajax功能:
<script>
$(".changeLang").click(function(event) {
event.preventDefault();
var url = $(this).attr("href");
$.ajax({
url: url,
cache: false,
beforeSend: function() {
$(".loaderOverlay").fadeIn();
},
success: function(html) {
$("#container").html(html);
$(".loaderOverlay").fadeOut();
pageCvInit();
initAjaxHeadline();
}
});
});
</script>
url可能是**** / fr所以在控制器中有一個類似的方法:
public function getFr() { $lang = $this->retrieveLang("FR"); return View::make('cv.cv', array('lang' => $lang)); }
我試圖把條件放在上面
@extends() @section() @stop
部分,但每次調用ajax函數時,整個身體都通過ajax方法(甚至是標簽),我只想重新加載身體。
我該怎么做呢? 非常感謝
你只需要重新加載想要看到變化的div,成功就這樣:
$("#mydiv").load(location.href + " #mydiv");
不知道你的意思是整個身體經過ajax並且你只想重新裝載身體。
嘗試更改您的成功以過濾掉收到的HTML的正文。
success: function(html) {
$("#container").html($(html).filter('body').html());
$(".loaderOverlay").fadeOut();
pageCvInit();
initAjaxHeadline();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.