2012-07-02 5 views
1

Как удалить «unbind» после его использования? Мне нужно включить обратно событие click. ниже моей функции.JQuery: как удалить unbind ("click")

1.Это функция отключения на ссылку Печать

function edit(){ 
$("#ENQUIRY_VIEWMETER a.print").addClass('ui-state-disabled').unbind("click"); 
} 

2.Чтобы включить ссылку, чтобы быть интерактивными.

function reset(){ 
$("#ENQUIRY_VIEWMETER a.print").removeClass('ui-state-disabled').bind("click"); 
} 

Есть ли другой способ, чтобы я мог снова активировать ссылку?

+0

Проверьте это: http://stackoverflow.com/questions/9596909/actionlink-executing-multiple-times –

ответ

2

С помощью нового Jquery 1.7 On() и off() методы, вы можете добиться этого, как и в следующем ... Для получения более подробной информации плз чтения Usage with Examples

выключен():

$('#ENQUIRY_VIEWMETER a.print').off("click"); 

Или

('#ENQUIRY_VIEWMETER').off('click', 'a.print'); 

на():

$('#ENQUIRY_VIEWMETER a.print').on('click', handleClick); 
+0

я уже обновить JQuery, а также использовать .off() его работающ отлично. но как использовать .on()? $ ('# ENQUIRY_VIEWMETER a.print'). On ("click", handleClick); это мой код, но он не работает. – hemiz

+0

Вы прочитали учебник? о котором я упомянул мой ответ – Talha

1

Кэш вашего кода для события в переменной и использовать пространства имен событий. Также используйте on(), так как bind() устарел.

var foo = function() { ... } 

$el.on('click.foo', foo) // Bind event `foo` on click 

$el.off('click.foo') // Unbind `foo` events attached to `click` 
$el.off('.foo') // Unbind all `foo` events 

$el.on('click.foo', foo) // Bind again