вернуть действие по дефолту
Доброго времени всем,
отменить действие по дефолту вроде просто, а как вернуть действие браузера по дефолту? |
Обычно не подходит, но можно "пересоздать" элемент на странице, обработчики скинуться.
Нужно ставить условие перед отменой действия по умолчанию. |
Цитата:
P.S. наверное правильнее перевесить обработчик... |
Событие происходит на элементе и всплывает до "document", при этом отмена действия по умолчанию у родителя не должна отменять действия по умолчанию у потомков.
Смысл preventDefault при обработке клика по document? |
Не-не, ещё разок. Я не отменял действия, я повесил один обработчик на весь документ. Документ состоит из дива, в котором таблица. Обработчик, при клике на строку, создаёт див, состоящий из нескольких элементов; в эти элементы заносятся содержимое из ячеек строки. Далее при клике на элемент создаётся форма для редактирования.
так вот, в конце документа, после дива с таблицей, понадобилась форма с кнопкой, с обработчиком на стороне сервера. С одним обработчиком на всём документе, понятно, что клик вызывает функцию обработчика на клиенте, а вот сделать обычный submit, что-то без костылей никак не пойму как. |
<input type = "number">
<a href = "https://ya.ru/">Яндекс</a>
<form>
<input type = "text">
<input type = "submit">
</form>
<script>
document.onclick = function(e) {
if(e.target.type != 'submit') {
e.preventDefault();
alert( e.target.type);
}
}
</script>
|
Цитата:
|
Всем большущее спасибо, каюсь, сдуру или по недоразумению неправильный тип для кнопки указал в php файле, из-за этого не работал submit. Исправил, и теперь не нужно изобретать велосипед, submit весело пересылается на php обработчик :)
|
| Часовой пояс GMT +3, время: 18:01. |