table td 可编辑

[size=small][b]jquery 版[/b][/size]

<td onclick="realityNum(event.srcElement ? event.srcElement : event.target);">${p.PKGCOUNT}</td>
[b]注:[/b]event.srcElement ? event.srcElement : event.target)//判断浏览器IE为event.srcElement Firefox下为event.target.

函数:

var oldObj="";
var $newNode=$("<input type='text' id='reality_input' style='width:40px;' maxlength='6'>");
function realityNum(obj){
var oldValue=$(obj).text();
if(obj.tagName=='TD'){ //点击的标签对象是不是TD,主要是避免当单击input也会触发此函数事件
if(oldObj!=""){ //是否已创建input对象
var newValue=$.trim($("#reality_input").val());
if(validateNumber(newValue)){ //如果输入框中有值则把当前input对象删除,并把值填充到TD中,清空oldObj对象.
$(oldObj).html(newValue); oldObj=""; // 清空 return ;
}
}
oldObj=obj;
$(obj).text(''); //清空obj中的文本
$newNode.val(oldValue); //赋值
$(obj).append($newNode); //把input元素添加到obj中
$newNode.focus();
}
}


[b]jquery 版2[/b]

<td align="center" id="release_activate_count">${releaseActivateCount}</td>


var $newNode=$("<input type='text' id='release_activate_count_input' style='width:60px;' maxlength='6' onclick='doSomething(this,event)'>");
var $oldTdObj=""; //用于保存TD对象
$(function(){
$("td[id=release_activate_count]").click(function(){
var $oldValue=$(this).text(); //获取当前TD的值
var $ifInput=$(this).children().is('input'); //是否存在input
if($oldTdObj!=""){
var newValue=$("#release_activate_count_input").val();

if(!isPositiveNumber(newValue) && (typeof(newValue)!="undefined")){
alert("请输入正整数!");
return false;
}else{
$oldTdObj.text(newValue);
}
}
<%--如果TD单元格中不存在input,则添加--%>
if(!$ifInput){
$(this).text('');
$oldTdObj=$(this);
$(this).append($newNode);
$newNode.val($oldValue);
$newNode.focus();
}
});
});
<%--验证是否为正整数--%>
function isPositiveNumber(s){
var express=/^(0|[1-9][0-9]*)$/;
return express.test(s);
}
<%--js阻止冒泡事件--%>
function doSomething(obj,evt){
var e=(evt)?evt:window.event;
if(window.event){
e.cancelBubble=true;
}else{
e.stopPropagation();
}
}


[size=small][b]js版(转载)[/b][/size]

oldObj="";
var newNode=document.createElement("input");
newNode.type="text";
function setEdit(click_td){
var obj;
if(click_td.tagName=="TD"){
if(oldObj!=""){
oldObj.removeChild(eval("tmpText"));
if(newNode.vlaue=="") oldObj.innerText=" ";
else oldObj.innerText=newNode.value;
}
obj=click_td;
oldObj=obj;
newNode.width=obj.offsetWidth;
newNode.height=obj.offsetHeight;
newNode.id="tmpText";
newNode.value=obj.innerText;
obj.innerText="";
obj.appendChild(newNode);
newNode.focus();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值