Javascript jQuery在单击时执行而不是在输入时执行
我正在做一个Javascript jQuery在单击时执行而不是在输入时执行,javascript,jquery,html,Javascript,Jquery,Html,我正在做一个onclick事件,用户被重定向到一个新站点 不幸的是,当我点击classside中的输入时,它触发了事件,而我在输入字段中点击/键入时,却在寻找它不执行事件 Q:如何使jQuery代码在单击输入字段时不触发? <div id="<?echo $ar['url'];?>" class="mobile-no-margin upgradeable full-mobile col-sm-12" style=" background-size: 100% 100%; ba
onclick
事件,用户被重定向到一个新站点
不幸的是,当我点击classside
中的输入时,它触发了事件,而我在输入字段中点击/键入时,却在寻找它不执行事件
Q:如何使jQuery代码在单击输入字段时不触发?
<div id="<?echo $ar['url'];?>" class="mobile-no-margin upgradeable full-mobile col-sm-12" style=" background-size: 100% 100%; background-image: url(test">
<div class="side">
<input type="input" name="<? echo $ar['input'];?>" class="col-sm-12">
</div>
</div>
使用
$(".upgradeable").on('click',function(e) {
var target = $( e.target );
if ( !target.is( ".side" ) ) {
id = $(this).attr('id');
url(id);
}
});
你想让它做什么?何时触发该事件?@dane,我只希望在单击.upgradeable div(或任何子元素)时触发该事件,我只是不希望在单击输入字段时触发该事件。请检查是否使用该div是click或其他元素…单击输入会冒泡到外部div。取消冒泡$(div.side输入)。on('click',function(e){e.stopPropagation()})
如果(!target.is(“.side input”){但是谢谢!等待它允许我。
$('.yourelement).click(function(event){
event.preventDefault(); // Stop the click
});
$(".upgradeable").on('click',function(e) {
var target = $( e.target );
if ( !target.is( ".side" ) ) {
id = $(this).attr('id');
url(id);
}
});