|
① 首先要會使用Thinkphp這個框架
② 最好有些ajax的基礎(chǔ)(可以去看下小飛的另外一篇博文:Ajax實時驗證"用戶名/郵箱等"是否已經(jīng)存在)
③ 4個js文檔(點此免積分下載)
先貼上源代碼:
復(fù)制代碼 代碼如下:
<script type="text/Javascript" src="__PUBLIC__/js/base.js"></script>
<script type="text/Javascript" src="__PUBLIC__/js/prototype.js"></script>
<script type="text/Javascript" src="__PUBLIC__/js/mootools.js"></script>
<script type="text/Javascript" src="__PUBLIC__/js/Ajax/ThinkAjax.js"></script>
<script type="text/Javascript">
function checktitle()
{
ThinkAjax.send('__URL__/checktitle','ajax=1&title='+$('title').value,'','checkbox');
}
</script>
<form action="__URL__/insert" method="post" id="myform">
<table>
<tbody>
<tr>
<td width="45" class="tRight">標(biāo)題:</td>
<td>
<input type="text" id="title" name="title">
<input type="button" value="檢查" onClick="checktitle();">
</td>
<td>
<span id="checkbox"></span>
</td>
</tr>
</tbody>
</table>
</form>
代碼解釋:
為“檢查”按鈕添加一個onclick事件,當(dāng)按鈕被點擊時,調(diào)用checktitle()函數(shù)
在checktitle函數(shù)中,我們只用到了ThinkAjax對象中的成員方法send
send:function(url,pars,response,target,tips,effect){……}
可以看出ThinkAjax.send方法共有6個參數(shù):
參數(shù)url:表示要將客戶端瀏覽器傳輸過來的數(shù)據(jù)提交到服務(wù)器上的哪個方法進(jìn)行處理,我這里提交給“當(dāng)前模塊下的checktitle方法”處理
參數(shù)pars:相當(dāng)于ajax中的send方法中的參數(shù)string,表示要提交過去的數(shù)據(jù),該參數(shù)只用于post方式傳值
參數(shù)response:自定義的回調(diào)函數(shù),如果定義了回調(diào)函數(shù),則服務(wù)器處理完提交過去的數(shù)據(jù)之后,將會把處理后的數(shù)據(jù)交給回調(diào)函數(shù)進(jìn)行處理。該回調(diào)函數(shù)有兩個參數(shù):①data②status 參數(shù)data:將服務(wù)器端處理后的數(shù)據(jù)賦給data 參數(shù)status:表示處理后的狀態(tài)信息,1表示成功 0 表示失敗
參數(shù)target:表示將處理后的數(shù)據(jù)在哪個地方進(jìn)行顯示(或輸出),比如:我將此參數(shù)賦為:checkbox,表示處理后的數(shù)據(jù)會在id=”checkbox”的標(biāo)簽進(jìn)行信息輸出
當(dāng)前模塊下的checktitle方法的源代碼:
復(fù)制代碼 代碼如下:
<?php
class IndexAction extends Action
{
// 首頁
public function index(){
$this->display();
}
// 檢查標(biāo)題是否可用
public function checkTitle()
{
if(!empty($_POST['title']))
{
$Form = D("Form");
if($Form->getByTitle($_POST['title']))
{
$this->error('標(biāo)題已經(jīng)存在');
}
else
{
$this->success('標(biāo)題可以使用!');
}
}
else
{
$this->error('標(biāo)題不能為空...');
}
}
}
?>
文章作者:WEB開發(fā)_小飛
php技術(shù):利用ThinkPHP內(nèi)置的ThinkAjax實現(xiàn)異步傳輸技術(shù)的實現(xiàn)方法,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。