使用jQuery编辑删除页面内容,两种方式

时间:2021-09-25 16:11:34

第一种,比较少的编辑用这种,直接在那块内容上编辑,失去焦点即完成

前几天做编辑框的时候,需要只修改一个状态

//编辑角色
function editTr($this){
thatTd=$($this).parent().prev();
value=$.trim(thatTd.html());
str='<input type="text" id="editing" value="'+value+'">';
thatTd.html(str);
thatTd.find('input').focus();
} //编辑完成
$(document).on('blur','#editing',function(){
value=$(this).val();
$(this).parent().html(value);
layer.msg('编辑用户角色完成',{icon:1,time:1000})
})

使用jQuery编辑删除页面内容,两种方式

第二种,整行都可编辑的实现

模板文件:lists数组为已经存在的列;js文件处理比较多,就不全部拆出来放了,只放一个编辑的处理,添加就是组合一个字符串append过来,删除直接获取ID之后ajax删除就好。

 <tbody>
<volist name="lists" id="v">
<tr>
<td>{$v.id}</td>
<td>{$v.name}</td>
<td>{$v.sort}</td>
<td><if condition="$v['default'] eq 1">YES<else />NO</if></td>
<td class="actiontd"><span class="action edit">编辑</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="action del">删除</span></td>
</tr>
</volist>
<tr id="nowtr">
<td id="swid"></td>
<td><input id="swname" type="text" placeholder="请填写软件名称" /></td>
<td><input id="swsort" type="text" class="small" placeholder="排序" /></td>
<td>
<select id="swdefault">
<option value="1">默认选中</option>
<option value="0">默认不选</option>
</select>
</td>
<td class=""><a class="btn btn-success" id="swadd">添加</a></td>
</tr>
</tbody>
   $('table').on('click','span.edit,span.MJedit',function(){
var pre='';
var tdlist=$(this).parent().parent().find('td');
if($(this).attr('class')=='action MJedit'){
pre='MJ';
}
$('#'+pre+'swid').html(tdlist.eq(0).html());
$('#'+pre+'swname').val(tdlist.eq(1).html());
$('#'+pre+'swsort').val(tdlist.eq(2).html());
defaultx=($.trim(tdlist.eq(3).html())=='YES')?1:0;
$('#'+pre+'swdefault').val(defaultx);
typename=tdlist.eq(4).html();
$("#MJtype option:contains('"+typename+"')").attr("selected",true);
$('#'+pre+'swadd').html('编辑');
layer.msg('请在下面编辑');
})//edit end

js文件on里选择器有 span.edit,span.MJedit  是有两处都会触发编辑,之后通过attr('class')做稍微不同的处理,用pre变量区别。和此处关系不大,不用太在意。

使用jQuery编辑删除页面内容,两种方式