2014-02-17 171 views
0

我通过名为“thisWeek”的控制器调用名为“thisweek”的视图。它将返回一个数组和一个对象来查看。现在我想通过ajax来改变它。所以我打电话给ajax,再次呼叫控制器“thisweek”并传递数据。但它无法呈现布局。 控制器是: -通过ajax渲染布局

public function action_thisWeek(){ 
    $keywords = Input::post("keywords"); 
    $user = (Input::post("user") == "") ? -2 : Input::post("user"); 
    $direction = Input::post("direction"); 
      if(isset($_POST['from_date']) && isset($_POST['to_date'])): 
       $data['from'] = $_POST['from_date']; 
       $data['to'] = $_POST['to_date'] ; 
      else: 
       echo $data['from'] = (date('N', time()) == 1) ? date('Y-m-d') : date('Y-m-d', strtotime("last monday")); 
       echo $data['to'] = date('Y-m-d', strtotime("next sunday")); 
      endif; 
      $data["dateRange"] = $this->_createDateRangeArray($data['from'], $data['to']); 
    if(Input::get("print") && Input::get("roulatie")) { 
     $data['reservations'] = $this->getReservations(
      array("keywords" => $keywords, 
       "user" => $user, 
       "direction" => Input::get("print"), 
       "date" => Input::get("roulatie") 
      ) 
     ); 
    } else { 
     $data['reservations'] = $this->getReservations(
      array("keywords" => $keywords, 
       "user" => $user, 
       "direction" => $direction, 
       "from" => $data['from'], 
       "to" => $data['to'] 
      ) 
     );  
    } 
    if(Input::get("print")) return $this->_print($data); 
      if(!isset($_POST['from_date']) && !isset($_POST['to_date'])): 
    $this->template->title = "Reserveringen - deze week"; 
      endif; 
      $this->template->content = View::forge('admin/reservations/thisweek', $data);  
} 

Ajax调用是: -

$.ajax({ 
type: "POST", 
url: "<?php echo Uri::base(false) ?>index.php/admin/reservations/selectWeek", 
data: {to_date:week_to, from_date:week_from }, 
success: function(response){ 
     } 
     }); 

请帮助我,我怎样才能通过Ajax呈现布局。

回答

0

我得到了解决,我用的效应初探到HTML即我更新控制器发送到

public function action_thisWeek(){ 
    $keywords = Input::post("keywords"); 
    $user = (Input::post("user") == "") ? -2 : Input::post("user"); 
    $direction = Input::post("direction"); 
      if(isset($_POST['from_date']) && isset($_POST['to_date'])): 
       $data['from'] = $_POST['from_date']; 
       $data['to'] = $_POST['to_date'] ; 
      else: 
       echo $data['from'] = (date('N', time()) == 1) ? date('Y-m-d') : date('Y-m-d', strtotime("last monday")); 
       echo $data['to'] = date('Y-m-d', strtotime("next sunday")); 
      endif; 
      $data["dateRange"] = $this->_createDateRangeArray($data['from'], $data['to']); 
    if(Input::get("print") && Input::get("roulatie")) { 
     $data['reservations'] = $this->getReservations(
      array("keywords" => $keywords, 
       "user" => $user, 
       "direction" => Input::get("print"), 
       "date" => Input::get("roulatie") 
      ) 
     ); 
    } else { 
     $data['reservations'] = $this->getReservations(
      array("keywords" => $keywords, 
       "user" => $user, 
       "direction" => $direction, 
       "from" => $data['from'], 
       "to" => $data['to'] 
      ) 
     );  
    } 
      $weekNumber = date("W"); 
    if(Input::get("print")) return $this->_print($data); 
      if(!isset($_POST['from_date']) && !isset($_POST['to_date'])): 
    $this->template->title = "Reserveringen - ". $weekNumber ." week"; 
      $this->template->content = View::forge('admin/reservations/thisweek', $data); 
      else: 
       return Response::forge(View::forge('admin/reservations/thisweek', $data)); 
      endif; 

}