function td2input(obj) {
var text = obj.innerHTML;
obj.outerHTML = "<td><input type=\"type\" name =\"\" value=\"" + text + "\" size=\"4\" /></td>";
}请问我要怎么办啊?IE报未知运行错误。

解决方案 »

  1.   


    用appendChild来添加内容~·
      

  2.   

    <script>
    function td2input(obj) {
    var text = obj.innerHTML;
    obj.outerHTML = "<td><input type=\"type\" name =\"\" value=\"" + text + "\" size=\"4\" /></td>";
    }
    </script>
    <input type='text' onclick='td2input(this)'>
    木有啊,IE7,IE8,ff下正常
      

  3.   


    function addEvent(obj, type, fn){
    if (obj) {
    if (obj.addEventListener) {
    obj.addEventListener(type, fn, false);
    } else if (obj.attachEvent) {
    var funIe = function(){
    fn.call(window.event.srcElement);
    };
    obj.attachEvent("on" + type, funIe);
    } else{
    obj["on" + type] = fn;
    }
    };
    }var removeEvent = function(obj, type, fn){
    if(obj){
                    if (obj.removeEventListener) {
                        obj.removeEventListener(type, fn, false);
                    } else if (obj.detachEvent) {
                        obj.detachEvent("on" + type, fn);
                    } else {
                        obj["on" + type] = null;
                    }
    }
                };var td2input = function(obj) {
    var text = obj.innerHTML;
    obj.innerHTML = "<td><input type=\"type\" name =\"\" value=\"" + text + "\" size=\"4\" /></td>";
    }
    var i,j,tp = new Array();
    var tdInput = document.getElementsByTagName("td");
    for(i = 0, j = 0; i < tdInput.length; i++)
    if(tdInput[i].className == "td2input")
    tp[j++] = tdInput[i];
    for(i = 0; i < tp.length; i ++)
    addEvent(tp[i], "click", function(obj) { return function(){td2input(obj);}}(tp[i]));
    请大家帮我看看吧,我的想法是为页面里所有class为td2input的td元素添加td2input()方法,我这样可以添加,但是没点一次里面的值都会变,我想用appendChild也是一下,我写了个removeEvent想每次调用玩td2input就remove掉,但是没用,我的写法如下var td2input = function(obj) {
    var text = obj.innerHTML;
    obj.innerHTML = "<td><input type=\"type\" name =\"\" value=\"" + text + "\" size=\"4\" /></td>";
            removeEvent(obj, "click", function(){td2input(obj);});
    }请大家教教我要怎么做才能remove
    或者有更好的办法教教我,我总觉得我这种添加方法不怎么好。
      

  4.   

    能说清楚IE几吗,IE8表示没问题, FF下是没有outerHTML的
      

  5.   


    嗯,谢谢楼上的,我重新设计了
    function addEvent(obj, type, fn){
    if (obj) {
    if (obj.addEventListener) {
    obj.addEventListener(type, fn, false);
    } else if (obj.attachEvent) {
    var funIe = function(){
    fn.call(window.event.srcElement);
    };
    obj.attachEvent("on" + type, funIe);
    } else{
    obj["on" + type] = fn;
    }
    };
    }var removeEvent = function(obj, type, fn){
    if(obj){
    if (obj.removeEventListener) {
    obj.removeEventListener(type, fn, false);
    } else if (obj.detachEvent) {
    obj.detachEvent("on" + type, fn);
    } else {
    obj["on" + type] = null;
    }
    }
    };
    var ip = document.createElement("input"),currentCell;
    var td2input = function(event) {
    event == null ? currentCell=window.event.srcElement : currentCell=event.target;
    ip.value=currentCell.innerHTML;
    //currentCell.innerHTML = "<input type=\"type\" name =\"\" value=\"" + text + "\" size=\"4\" />";unction() {td2input("zsd");}
    currentCell.innerHTML = "";
    ip.onblur = blurDo;
    currentCell.appendChild(ip);
    ip.focus();
    removeEvent(currentCell, "dblclick", td2input);
    //alert(currentCell);

    };function blurDo(event) {
    currentCell.innerHTML = ip.value;
    if(event != null)
    addEvent(currentCell, "dblclick", td2input);
    }var i,j,tp = new Array();
    var tdInput = document.getElementsByTagName("td");
    for(i = 0, j = 0; i < tdInput.length; i++)
    if(tdInput[i].className == "td2input")
    tp[j++] = tdInput[i];
    for(i = 0; i < tp.length; i ++)
    addEvent(tp[i], "dblclick", td2input);
    但是我还有点疑问,要是我想加参数怎么办?
      

  6.   

    啊  啊啊 啊啊啊啊 啊啊啊木人回啊  啊啊 啊啊啊 啊啊啊啊啊 啊啊 啊啊啊啊啊啊 
    自己顶啊 啊啊啊 啊啊啊  啊啊啊啊啊啊 啊啊啊啊啊 啊啊 啊啊啊啊 啊啊啊啊啊 啊 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊  啊啊啊啊啊啊啊   啊啊啊啊  啊啊啊啊  啊啊啊啊  啊啊啊啊啊啊  啊啊啊啊啊啊啊啊啊啊 啊啊啊啊啊啊啊啊啊啊啊啊啊 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊  啊啊啊啊 啊啊啊 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊   啊啊啊啊  啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 啊啊啊      啊啊啊啊啊啊 啊 啊啊啊啊啊 啊   http://topic.csdn.net/u/20110907/08/a3432908-aa9a-4c01-b9be-55ef02ea853d.html?seed=1263799024&r=75387715#r_75387715