ajax修改异步选定行,后台 ajax 异步修改示例

现在很多后台程序修改数据的方法很人性化,点击文字之后该文字就会被增加到一个文本输入框之内,当该输入框失去焦点后,输入框消失,文字状态还原,不过文字的内容却不声不响的被改变了。用过 ecshop ,ecmall 开源程序的朋友应该都知道。一直感觉这个功能很实用,下面是作者从一开源程序内提取出来的实现 ajax 异步修改内容的功能,仅将一些主要的地方贴出来,更深层次的,大家可自行扩展。

(1)首先 html 代码如下:

465

(2)js 代码如下(这部分是关键代码):

$('span[class="editable"]').click(function(){

var s_value=$(this).text();

var s_url=$(this).attr('url');

var s_id=$(this).attr('id');

var require=$(this).attr('require');

$('').css({border:'1px solid #ccc',width:'80%',height:'20px'})

.attr({value:s_value,size:5})

.appendTo($(this).parent())

.focus()

.select()

.keyup(function(event){

if(event.keyCode==13){

if(require=='must'){

if($(this).val().length==0){

alert('此处内容不能为空!');

}

}

}

$(this).prev('span').show().text($(this).attr('value'));

$.ajax({

type:'GET',

url:s_url+encodeURI(s_value),

cache:false,

dataType:'json',

success:function(data){

if(data.code==='0'){

$('#'+s_id).parent().remove();

return;

}else{

alert(data.alerts);

}

}

});

$(this).remove();

})

.blur(function(){

if(require=='must'){

if($(this).val().length==0){

alert('此处内容不能为空!');

}

}

$(this).prev('span').show().text($(this).attr('value'));

$.ajax({

type:'GET',

url:s_url+encodeURI(s_value),

cache:false,

dataType:'json',

success:function(data){

if(data.code==='0'){

$('#'+s_id).parent().remove();

return;

}else{

alert(data.alerts);

}

}

});

$(this).remove();

});

$(this).hide();

});

(3)下面就是写具体的程序处理文件了,这里就不再写下去了,主要是以上关键代码搞懂了,其实就没什么问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值