Два события onclick

У меня есть onclick два раза на одной и той же кнопке, кнопка для какой-то второй, похоже, не работает. Что мне нужно сделать, чтобы заставить обоих работать.

<button type="submit" id="done">Ok</button>

1-е событие

$(document).ready(function () { $('#done').click(function () { });
});

Второе событие

$(function () { $(document).on("click", "#done", Done);
});
function Done() { $.ajax({ });
}
2 ответа

Проверьте демо-версию

Проверьте вторую демонстрацию, на которой показан код defualt, т.е. когда он работает без ошибок

В зависимости от состояния вывода запроса здесь показано, что выход отклоняется, поэтому входит в регистр ошибок

Jquery

$(document).ready(function () { $('#show').click(function(){ $('#done').show(); }); $('#done').click(function () { alert('called 1st'); $(this).siblings('.col-lg-11').attr('contenteditable', 'false'); $(this).siblings('.col-lg-11').attr('style', 'border:none;'); $(this).attr('style', 'display:none;'); $(this).siblings('.edit-link').attr('style', 'display:li;'); $(this).siblings('.cancel-link').attr('style', 'display:none;'); });
});
$(function () { $(document).on("click", "#done", Done);
});
function Done() { alert('called 2nd'); var s="sa";
var request = $.ajax({ type: "POST", url: "http://www.google.co.in", data: { name: "John", location: "Boston" }
}).done(function( ) { alert( "Data Saved: " ); });
request.fail(function( jqXHR, textStatus ) { alert( "Request failed: " + textStatus );
});
}


Я считаю, вам нужно немного отладить проблему. Заголовок вопроса указывает, что javascript (или jQuery) не обрабатывает событие click. Это может быть не так.

$(document).ready(function () { $('#done').click(function () { console.log('first') });
});
$(function () { $(document).on("click", "#done", Done);
});
function Done() { console.log('second')
}
<button type="submit" id="done">Ok</button>

Это отлично работает, см. Jsfiddle, консоль в моем браузере регистрирует как первое, так и второе сообщения. Таким образом, похоже, что оба события стреляют.

Теперь вам нужно отладить ваш запрос ajax или ваш контроллер. Попробуйте получить простой файл (одна строка внутри него) и предупредить об этом. Тогда вы можете точно определить свою точную проблему.

licensed under cc by-sa 3.0 with attribution.