У меня есть модальное всплывающее окно, которое я хочу скрыть, когда нажимается «тень», но не при нажатии на содержимое. Для этого у меня есть:Почему я не могу представить свою форму?
$('#shade').click(function(){
$('#shade').fadeOut();
}).children().click(function(e){
return false;
});
Проблема в том, у меня есть форма внутри, что я хочу представить, и этот код предотвращает форму от представления, поэтому у меня есть:
$('#shade-form-submit').click(function(){
document.getElementById('shade-form').submit();
});
Однако это результаты в следующей ошибке в консоли:
[13:07:21.145] TypeError: document.getElementById(...).submit is not a function @ ...
Что происходит? Для справки, мой <form>
тег:
<form action='.' method='post' id='shade-form'>
<div>
<input type='text' />
</div>
<div>
<div>
<input type='submit' />
</div>
</div>
</form>
Это странно, что вы используете 'document.getElementById', когда у вас есть jQuery, который может вам помочь. Вы можете полагаться на собственные методы, а не на jQuery для высокопроизводительных задач DOM, но это не так. – MaxArt
@MaxArt Я получил это только потому, что jQuery не работал! – fredley
Вы могли бы добавить это. Что возвращает 'document.getElementById'? Ваша форма, «null» или, может быть, другой элемент, который на самом деле не является формой? – MaxArt