Имеется вот такой код который выводится в результате AJAX запроса
var disable_element = function(){
$.ajax({
url: '/local/coupone_disable.php',
type: 'POST',
data: {id:<?=$arfields["ID"]?>},
})
.done(function(data) {
console.log(data);
})
};
$('.step-two-calccost__button').unbind(disable_element);
if ($disable_after_do) {
$('.step-two-calccost__button').bind(disable_element);
}
Суть кода, требуется изменить свойство элемента по щелчку кнопки.
Если я данную функцию цепляю напрямую к элементу, то при каждом аякс на кнопку вешается новый обработчик со своими параметрами и возможно ситуация что будет висеть 5-6 элементов для выключения, хотя по факту надо отключить только 1 из них.
Для того что бы этого не происходило я пытаюсь сперва отвязать данный обработчик, а далее повесить его заново с новыми параметрами. (сделать полный unbind() нельзя так как на целевой кнопке есть другие обработчики)
Однако в консоли я получаю вот такую ошибку
Uncaught TypeError: (intermediate value).match is not a function
И к сожалению не могу понять где именно идет поломка