DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> jQuery+ajax實現鼠標單擊修改內容的思路
jQuery+ajax實現鼠標單擊修改內容的思路
編輯:JQuery特效代碼     

現有表格中的一行的代碼如下所示:
效果可以看下具體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'];
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved