用js动态插入HTML标签时的一点注意的地方

这两天在学习js,发现一个问题,我在用appendChild动态插入一个input type=text标签时,发现不能设置这个文本框所响应的事件,代码是这样写的:
             var  oTextInDiv          =  document.createElement( " input " );
            oTextInDiv.type     
=   " text " ;
            oTextInDiv.id        
=   " textInDivId " ;
            oTextInDiv.width    
=  width  -   5 ;
            oTextInDiv.height    
=  height  -   5 ;
            oTextInDiv.onblur    
=   " removeChildDiv(this) " ;
            childDiv.appendChild(oTextInDiv);
当所创建的文本框失去焦点时,一直都不执行"removeChildDiv(this)"方法。

然后我选择用insertAdjacentHTML方法插入一段HTML代码:
             var  inputString  =   " <INPUT id=textInDivId οnblur='removeChildDiv(this)' width='100px' height='30px'/> " ;
            childDiv.insertAdjacentHTML(
" afterBegin " , inputString);
这样"removeChildDiv(this)"方法是执行了,但是新的问题又出现了,这样插入的方式我设置的属性又不起作用了,无语...

没有办法,只能把两个方法配合起来用:
             var  inputString  =   " <INPUT id=textInDivId οnblur='removeChildDiv(this)'> " ;
            childDiv.insertAdjacentHTML(
" afterBegin " , inputString);
            
            
var  textBox      =  document.getElementById( " textInDivId " );
            textBox.height     
=  height  -   6 ;
            textBox.width    
=  width  -   6 ;
不知道是我什么地方操作有问题,还是DHTML本来就是这个特性,不知道还有没有什么更好的方法,希望各位大虾指教。



 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值