首頁 > web前端 > js教程 > 主體

jQuery ajax實作滑鼠點選修改內容的想法_jquery

WBOY
發布: 2016-05-16 16:42:58
原創
1145 人瀏覽過

現有表格中的一行的程式碼如下所示:
效果可看下具體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.在欄位排序列中插入input框,並在input框中顯示欄位排序中的內容,並設定為焦點
4.修改input中的內容,失去焦點的時候提交數據,用ajax向伺服器傳遞數據 方法為post方法
5.提交資料的時候,友善提示修改中。 。 。 或等待圖片
6.返回成功訊息 ,重新顯示修改後的內容 去掉input框

實現此功能的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
登入後複製

function clickajax.php中內容就簡單了,這裡只做處理做演示用,並沒有向伺服器提交數據,程式碼如下:

sleep(1);//延时运行1秒,查看效果用,实际代码中不需要
echo $_POST['listorder'];
登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!