Jquery 单击事件在DOM创建的元素上不起作用
我在DOM中创建了两个按钮和一个文本字段。一切都很好,但当我对其中任何一个调用click方法时,都没有人工作。 代码:Jquery 单击事件在DOM创建的元素上不起作用,jquery,function,dom,click,Jquery,Function,Dom,Click,我在DOM中创建了两个按钮和一个文本字段。一切都很好,但当我对其中任何一个调用click方法时,都没有人工作。 代码: var BB= document.createElement('input'); BB.setAttribute('type','button'); //BB.setAttribute('id','BB'); BB.setAttribute('value','<<Back'); BB.s
var BB= document.createElement('input');
BB.setAttribute('type','button');
//BB.setAttribute('id','BB');
BB.setAttribute('value','<<Back');
BB.style.position="relative";
BB.style.left="2";
BB.id="BB";
var FB= document.createElement('input');
FB.setAttribute('type','button');
FB.setAttribute('id','FB');
FB.setAttribute('value','Next>>');
FB.style.position="relative";
FB.style.left="5";
var RT= document.createElement('input');
RT.setAttribute('type','text');
RT.setAttribute('value','10');
RT.style.position="relative";
RT.style.left="10";
RT.style.width="45";
RT.setAttribute('id','RT');
RT.setAttribute('placeholder','Range');
root.appendChild(BB);
root.appendChild(FB);
root.appendChild(RT);
$('#BB').click(function(){
alert("back ");
});
$('#FB').click(function(){
alert("forward");
});
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward");
});
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward");
});
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward");
});
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward");
});
由于#BB、#FB
元素是动态创建的,因此您需要使用事件委派将事件处理程序注册到这些元素
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward ");
});
由于#BB、#FB
元素是动态创建的,因此您需要使用事件委派将事件处理程序注册到这些元素
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward ");
});
由于#BB、#FB
元素是动态创建的,因此您需要使用事件委派将事件处理程序注册到这些元素
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward ");
});
由于#BB、#FB
元素是动态创建的,因此您需要使用事件委派将事件处理程序注册到这些元素
试试这个
$(document).on('click','#BB',function(){
alert("back ");
});
$(document).on('click','#FB',function(){
alert("forward ");
});
更改此项:
$('#BB').click(function(){
alert("back ");
});
$('#FB').click(function(){
alert("forward");
});
为此:
$(document).on('click', '#BB', function(){
alert("back");
});
$(document).on('click', '#FB', function(){
alert("forward");
});
jQuery看到的DOM与开始时一样。如果不重新初始化事件处理程序或设置为确实存在的内容(如文档
),则无法将单击分配给不存在的内容。更改此设置:
$('#BB').click(function(){
alert("back ");
});
$('#FB').click(function(){
alert("forward");
});
为此:
$(document).on('click', '#BB', function(){
alert("back");
});
$(document).on('click', '#FB', function(){
alert("forward");
});
jQuery看到的DOM与开始时一样。如果不重新初始化事件处理程序或设置为确实存在的内容(如文档
),则无法将单击分配给不存在的内容。更改此设置:
$('#BB').click(function(){
alert("back ");
});
$('#FB').click(function(){
alert("forward");
});
为此:
$(document).on('click', '#BB', function(){
alert("back");
});
$(document).on('click', '#FB', function(){
alert("forward");
});
jQuery看到的DOM与开始时一样。如果不重新初始化事件处理程序或设置为确实存在的内容(如文档
),则无法将单击分配给不存在的内容。更改此设置:
$('#BB').click(function(){
alert("back ");
});
$('#FB').click(function(){
alert("forward");
});
为此:
$(document).on('click', '#BB', function(){
alert("back");
});
$(document).on('click', '#FB', function(){
alert("forward");
});
jQuery看到的DOM与开始时一样。无需重新初始化事件处理程序或设置为肯定存在的内容(如
文档
),它不能给不存在的东西分配点击。@BaqerNaqvi很高兴帮助你:-)
@BaqerNaqvi很高兴帮助你:-)
@BaqerNaqvi很高兴帮助你:-)
@BaqerNaqvi很高兴帮助你:-)