ThinkPHP3.1新特性之對Ajax的支援更加完善_php執行個體

來源:互聯網
上載者:User

ThinkPHP3.1版對AJAX的支援更加完善了,具體表現在:

1.判斷AJAX方式改進

現在可以直接使用常量IS_AJAX來判斷是否AJAX方式請求,用來取代之前的Action類的isAjax方法,優勢是可以在任何代碼裡面進行判斷。而Action類的error和success方法內建就支援對AJAX自動判斷支援。

2.ajaxReturn方法完善

原來的ajaxReturn方法只能返回固定結構的資料,包括data、status和info索引資訊,如果需要擴充額外的返回資料資訊,只能通過ajaxAssign方法,而ThinkPHP3.1版本則改進了ajaxReturn方法本身,可以更好的支援ajax資料擴充,例如:

$data['status'] = 1;$data['info'] = '返回資訊';$data['data'] = '返回資料';$data['url'] = 'URL地址';$this->ajaxReturn($data);

data傳值數組可以隨意定義。
改進後的ajaxReturn方法也相容之前的寫法,例如:

$this->ajaxReturn($data,'info',1);

系統會自動把info和1兩個參數併入$data數組中,等同於賦值

$data['info'] = 'info';$data['status'] = 1;$data['data'] = $data;$this->ajaxReturn($data);

但這種用法不再建議使用了。

3.success和error方法完善對ajax支援

如果是ajax方式下面,Action類的success和error方法都做了改進支援,這兩個方法的參數會轉換成ajaxReturn方法的data資料的info、status和url參數。還可以支援傳入其他的參數,有兩種方式支援ajax傳值。以success方法為例,第一種方式是直接傳入ajax資料

$data['code'] = 200;$data['name'] = 'ThinkPHP';$this->success('成功提示資訊','跳轉地址',$data);

或者採用

$this->assign('code',200);$this->assign('name','thinkphp');$this->success('成功提示資訊','跳轉地址');

最終返回給用戶端的ajax資料資訊是一個數組,包括name、code、info、status和url。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.