js中如何对一个js创建的对象绑定事件?
比如用js动态创建一个input,varinput=document.createElement('input');我要给这个input绑定onblur事件,而且我不允许...
比如用js动态创建一个input,var input=document.createElement('input');
我要给这个input绑定 onblur事件,而且我不允许用input.onblur=test;
请问该怎样做?可参看如下代码:
<input id='button1'value='appendInput'type='button'/>
<input id='button2' value='inputOnClick' type='button'/>
<script type='text/javascript'>
var button1=document.getElementById('button1');
button1.onclick=append;
function append(){
var body=document.getElementsByTagName('body')[0];
var input=document.createElement('input');
input.type='text';input.value='测试';input.id='test';
body.appendChild(input);
}
var button2=document.getElementById('button2');
button2.onclick=inputClick;
function inputClick (){
var input=document.getElementById('input');
alert(input.value);
} 展开
我要给这个input绑定 onblur事件,而且我不允许用input.onblur=test;
请问该怎样做?可参看如下代码:
<input id='button1'value='appendInput'type='button'/>
<input id='button2' value='inputOnClick' type='button'/>
<script type='text/javascript'>
var button1=document.getElementById('button1');
button1.onclick=append;
function append(){
var body=document.getElementsByTagName('body')[0];
var input=document.createElement('input');
input.type='text';input.value='测试';input.id='test';
body.appendChild(input);
}
var button2=document.getElementById('button2');
button2.onclick=inputClick;
function inputClick (){
var input=document.getElementById('input');
alert(input.value);
} 展开
1个回答
展开全部
function addEventListener(el, type, fn) {
if (el.addEventListener) {
el.addEventListener(type, fn, false);
} else if (el.attachEvent) {
el.attachEvent('on' + type, fn);
} else {
return false;
}
}
function append(){
var body=document.getElementsByTagName('body')[0];
var input=document.createElement('input');
input.type='text';input.value='测试';input.id='test';
addEventListener(input,'blur',function(){
//触发blur代码
})
body.appendChild(input);
}
if (el.addEventListener) {
el.addEventListener(type, fn, false);
} else if (el.attachEvent) {
el.attachEvent('on' + type, fn);
} else {
return false;
}
}
function append(){
var body=document.getElementsByTagName('body')[0];
var input=document.createElement('input');
input.type='text';input.value='测试';input.id='test';
addEventListener(input,'blur',function(){
//触发blur代码
})
body.appendChild(input);
}
追问
很好,你在那个页面也回答了吧,我两个都采纳。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询