ホームページ > 記事 > ウェブフロントエンド > content_jquery を変更するためにマウスクリックを実装するという jQuery ajax のアイデア
既存のテーブルの行のコードは次のようになります:
その効果は、特定の 51 検索表示 http://www.51bt.cc で確認できます。Xunsearch の全文検索テクノロジーと組み合わせることで、ミリ秒レベルのデータ検索を実現できます。
<tr> <td><span class="catid">2</span></td> <td>公司介绍</td> <td>内部栏目</td> <td><span class="listorder" title="点击修改">2</span></td> </tr>
マウスのクリックでコンテンツを変更するというアイデアは次のとおりです:
1. 列ソート列の番号をクリックして、同じ行の最初の列の内容、つまり列 ID
を取得します。
2. 列ソートの数字を非表示
3. 列ソート列に入力ボックスを挿入し、入力ボックスに列ソート列の内容を表示し、フォーカスとして設定します
4. 入力の内容を変更し、フォーカスが失われたときにデータを送信し、ajax を使用してデータをサーバーに転送します。メソッドは post メソッド
です。
5. データを送信すると、変更中であることを示すわかりやすい通知が表示されます。 。 。 または写真をお待ちください
6. 成功メッセージを返し、入力ボックス
この関数を実装する jquery コア コードは次のとおりです:
$('.listorder').click(function(e){ var catid = $(this).parent().siblings("td:eq(0)").text();//获取同一行上 第一列中的id值 var listorder_now_text = $(this).text();//获取listorder中的内容 先保存起来 $(this).text("");//设置内容为空 var list_form = '<input type="text" value="'+listorder_now_text+'" size=2 class="listorder_input" />' ; $(this).parent().append(list_form); //插入 input框 $(".listorder_input").focus(); //自定义一个div 提示修改中 var loading = '<div id="loading"><img src="img/loading.gif" alt="修改中..."/></div>'; $(this).parent().append(loading); $('#loading') .css({ "color" : "red" , "display" : "none" }) //定义ajax的全局事件 $(this).ajaxStart(function(){ $('#loading').show(); }) $(this).ajaxStop(function(){ $('#loading').remove(); }) $(".listorder_input").blur(function(){ var thislist = $(this).siblings(); //取得同级的标签 即 修改后需要显示的 listorder $.post("ajax.php",{ action : "mod_listorder", catid : catid , listorder : $(this).attr("value") } , function(data, textStatus){ $(thislist).text(data); } );//end .post $(this).remove(); })//end function blur })// end
関数 clickajax.php の内容は単純で、処理とデモンストレーションにのみ使用され、データはサーバーに送信されません。
sleep(1);//延时运行1秒,查看效果用,实际代码中不需要 echo $_POST['listorder'];