技巧 Html元素的动态添加方法
来源:岁月联盟
编辑:zhu
时间:2008-05-12
技巧 Html元素的动态添加方法内容简介:今天做东东的时候要用js创建html元素然后动态给该元素添加方法,走了不少弯路。最后把解决方法发布,让大家以后少走弯路。js文件function CheckNull(id){ //DoSomeThing }var CheckNewNull= function(id){&n 今天做东东的时候要用js创建html元素然后动态给该元素添加方法,走了不少弯路。最后把解决方法发布,让大家以后少走弯路。js文件function CheckNull(id){ //DoSomeThing }var CheckNewNull= function(id){ return function(){ CheckNull(id); }} 给Html元素添加方法//创建一个textareastd2area=document.createElement("textarea");//设置属性std2area.setAttribute("id","member_Task"+position);std2area.setAttribute("name","member_Task"+position);//添加方法std2area.attachEvent("onblur",CheckNewNull("member_Task"+position)); 如果添加方法写成:std2area.attachEvent("onblur",CheckNull("member_Task"+position));或者写成std2area.attachEvent("onblur",CheckNull);那么会出现错误。原因是这样做是将CheckNull("member_Task"+position)的返回值赋给onblur而不是将函数CheckNull赋给该元素。所以正确的做法是将CheckNull用一个函数返回,如上所示。 最后写写添加方法的其它途径:
Std2area.onblur=CheckNull; Std2area.setAttribute(“onblur”,CheckNull);