.off()单击DIV的功能

时间:2016-10-10 19:40:02

标签: jquery events

我有一个php/mysql结果列表,其中我添加了一个功能点击以转到网址,就像这样

<li><div id=m_1>DATA</div> <button id=bu_1></button></li> 
<li><div id=m_2>DATA</div> <button id=bu_2></button></li> 
<li><div id=m_3>DATA</div> <button id=bu_3></button></li> 
<li><div id=m_4>DATA</div> <button id=bu_4></button></li> 
<li><div id=m_9>DATA</div> <button id=bu_9></button></li> 
<li><div id=m_13>DATA</div> <button id=bu_13></button></li> 

我需要随时按button id=bu_n我停用发送到各自div的网址。点击div id=m_n转到网址page.php?id=n 我正在尝试使用onoff

$(this).on('click', function(){
 window.location = "http://www.google.com/?id="+n;    
});

$(this).off('click', function(){
 window.location = null;    
});

我的问题是列表会产生结果,因此无法预测恢复id的{​​{1}}并在此div之类的函数中使用它。

2 个答案:

答案 0 :(得分:0)

您需要另一个选择器,例如:

$('button').on
$('button').off

或为每个按钮添加一个类并使用它来选择:

$('.btn').on
$('.btn').off

然后在里面:

$('.btn').on('click', function(){
   window.location = "http://www.google.com/?id="+ $(".btn" ).index(this);
});

但我不知道window.location = null;在这里需要做什么

https://jsfiddle.net/amrelgarhy/mt46pc3s/

答案 1 :(得分:0)

you need to add a class or use the selector, add a class disabled on click

 $('button').click(function (){
 if($(this).hasClass('disabled'))
{ return false;
}

 $(this).addClass('disabled'); 
});

将$(this)写入控制台或调试,您将获得所有相关信息