5

我是 Laravel 4 的新手。我有一个页面,其中有 3 个选项卡(基本上是大的可点击 div)来加载不同的用户信息。我想做的是我希望能够单击这些选项卡,发出 jquery ajax 请求,带回部分视图并使用该部分视图更新页面的一部分。我希望能够为每个标签做到这一点。

我得到了点击事件触发。我还尝试了不同的代码来完成 ajax 请求。出于某种原因,什么都没有发生。我不知道我是否在 route.php 中遗漏了一些东西。谁能给我一些关于如何做到这一点的代码?或者可能是其他想法?

我这样做了::

路由.php

Route::post('userInfo','UserController@showInfo');

jQueryAjax:

$("divtoUpdatePartialView").click(function(){

$.ajax({
  type: "POST",
  url:Not Sure,
  data: { id: userId }
}).done(function( msg ) {
  alert( msg );
});

}

我也尝试使用 Base Url,但没有任何反应。我在我的母版页上声明了一个 ajax 库。你能帮我或给我一些其他的想法吗?

非常感谢您的回答。我试过这样,这就是我所拥有的......

Route.php:

Route::get('user_Profile/userInfo', 'UserController@getshow');

阿贾克斯:

var  userId='1';

$.ajax({
    type: "POST",
    url: 'user_Profile/userInfo',
    data: { id: userId }
}).done(function( msg ) {
    alert( "the messageis "+msg );
});


My userController::

public function getshow()
    {
           return "No ajax";
    if (Request::ajax()) {

        return "yeahhhh";
    $html=View::make('user.userProfile')->nest('partial', 'user.userInfoPartial')-        >with('title',$title)->render();


}
}

当我直接访问页面时,我收到“没有 ajax”,但是当我尝试 ajax 方式时,什么也没有发生。你能看到我错过了什么吗?

再次感谢你的帮助..

4

2 回答 2

4

The url should be the path/pattern you have used in your route and in this case it's

userInfo

The ajax

$.ajax({
    type: "POST",
    url: 'userInfo',
    data: { id: userId }
}).done(function( msg ) {
    alert( msg );
});

Also, make sure that, you can directly access the page from your browser's address bar using

http://yourdomain.com/userInfo
于 2013-07-10T18:20:54.480 回答
2

return 语句应该放在 if 语句之后;

   public function getshow(){

    if (Request::ajax()) {
        $html=View::make('user.userProfile')->nest('partial', 'user.userInfoPartial')-        >with('title',$title)->render();
        return "yeahhhh";
    }
           return "No ajax";
}

返回语句退出函数,这意味着任何进一步的代码都不会被执行:)

于 2013-08-29T19:30:19.507 回答