ThinkPHP内蔵のThinkAjaxによる非同期伝送技術の実現方法


準備作業:①まずThinkPHPという枠組みを使うこと。②いくつかのajaxの基礎(飛行のもう一つのブログを見ることができます。Ajaxはリアルタイムで「ユーザー名/メールアドレスなど」が既に存在しているかどうかを検証します。)③4つのjs文書(ポイント無料でダウンロードします。)はソースコードを先に貼り付けます。chectle関数を呼び出します。chectle関数では、ThinkAjaxオブジェクトのメンバーメソッドsend:function(url,pars,reponse,target,tips,effect){…}を使用しています。ThinkAjax.sendメソッドは6つのパラメータがあります。パラメータurl:クライアントのデータを転送する方法を示します。ここで「現在のモジュールでのchecktitle方法」の処理パラメータparsを提出します。ajaxのsendメソッドのパラメータstringに相当します。過去のデータを提出することを表しています。このパラメータはpost方式のパラメーターレスポンスのみに使用されます。カスタムのコールバック関数が定義されていたら、サーバは過去のデータを処理してから提出します。処理したデータをコールバック関数に渡して処理します。このコールバック関数には、①data②statusパラメータdataがあります。サーバ端処理後のデータをdataパラメータstatusに割り当てます。処理後の状態情報を表します。1成功したことを表します。0は失敗パラメータtargetを表します。処理後のデータをどこで表示(または出力)するかを示します。例えば、このパラメータをcheckboxとします。処理後のデータはid="checkbox"のラベルで情報出力されます。現在のモジュールの下のchecktitleメソッドのソースコード:
 
<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"> :</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>
文章の著者:WEB開発_小飛び