<input id=test>
<script language="JavaScript"><!--
test.attachEvent("onclick",clk)
function clk()
{
    alert("OK");
}
alert(test.outerHTML);
//--></script>

解决方案 »

  1.   

    <input id=test>
    <script>
      test.onclick = clk
    function clk(){
    alert('s')
    }
    alert(test.outerHTML) 
    </script>
    不知道我理解的是否正确.
      

  2.   

    <input id=test>
    <script>
    test.onclick = clk
    function clk(){
    alert("ok")
    }
    test.outerHTML = test.outerHTML.replace(/<INPUT/,"<input  onclick='clk()'")
    alert(test.outerHTML) //结果为<input id=test onclick=clk()>
    </script>
      

  3.   

    <input id=test onclick=clk()>
    alert(test.outerHTML) //=<input id=test onclick=clk()><input id=test>
    test.onclick = clk
    function clk(){
    }
    alert(test.outerHTML) //=<input id=test>
      

  4.   

    关键是事件应该赋于一个函数或动作,但
    test.onclick = "clk()"
    你这样赋值就不是赋值于一个函数了,"clk()"只是一个字符串,这样一个事件自然就变成了一个属性了!
      

  5.   

    在怎样赋值其它方法如:
    <input id=test>function c(){}
    test.c = c但是
    alert(test.outerHTML)  为 <input id=test c=c()>或者<input id=test c="c()">
    function c(){}
    能够调用test.c()当然不能用eval(test.c)