Кнопка отправки не работает

У меня есть форма с <input type="submit". В chrome submit ничего не делает. В "сети" во вкладке инструментов разработчика я ничего не вижу. Ошибок в инструментах разработчика также нет. Между тем, если я сохраню страницу и открою сохраненную страницу, то после того, как я нажму кнопку "Отправить", я вижу, что что-то появляется на вкладке "сеть". Это происходит в chrome и firefox. Это работает в IE.

Есть ли у кого-нибудь задним числом, на что я должен смотреть?

EDIT: мне не нужен прямой ответ, мне нужно только знать, где я должен смотреть. Если кто-то отправляет направление, и это поможет мне решить мою проблему, я приму это как правильный ответ.

EDIT2: Структура страницы выглядит следующим образом:

html
    head
    body
        div
        div
            form
            form
            form
            form
            form
                input
                input
                table
                table
                    tbody
                        tr..td..input type=submit

EDIT3: Мы обнаружили фактическую проблему: именно на странице была ссылка, содержащая href="#", и после нажатия на эту ссылку submit перестали работать, потому что # был добавлен в конец URL-адреса и потому что action формы был пуст, поэтому он взял URI из текущего URI, который содержал # в поле, поэтому вместо отправки браузер переходил на текущую страницу.

Ответ 1

Если вы не используете javascript/jquery для проверки формы, тогда простой формат для вашей формы будет выглядеть следующим образом.

внутри тела вашего html-документа:

<form action="formHandler.php" name="yourForm" id="theForm" method="post">    
    <input type="text" name="fname" id="fname" />    
    <input type="submit" value="submit"/>
</form>

Вам нужно убедиться, что у вас есть кнопка отправки в тегах формы и соответствующее действие. Например, отправка в php файл.

Для получения более прямого ответа укажите код, с которым работаете.

Вы можете найти следующее: http://www.w3.org/TR/html401/interact/forms.html

Ответ 2

Используете ли вы HTML5? Если да, проверьте, есть ли у вас <input type="hidden"> в вашей форме с свойством required. Удалите это свойство required. Internet Explorer не будет использовать это свойство, поэтому он работает, но Chrome будет.

Ответ 3

Проверьте, используете ли вы какую-либо проверку на jquery/javascript на странице и попробуйте отключить ее и посмотрите, что произойдет. Вы можете использовать инструменты разработчика браузера, чтобы узнать, загружен ли какой-либо файл javascript с проверкой или проверкой. Вы также можете искать скрытые элементы формы (т.е. Набор стилей для отображения: none или что-то в этом роде) и убедитесь, что не существует скрытой ошибки проверки на тех, которые не отображаются.

Ответ 4

Сегодня я столкнулся с этой проблемой, и проблема заключалась в том, что я предотвращал действие по умолчанию в документе onclick:

document.onclick = function(e) {
    e.preventDefault();
}

Документ onclick обычно используется для делегирования событий, но не рекомендуется предотвращать по умолчанию для каждого события, вы должны делать это только для необходимых элементов:

document.onclick = function(e) {
    if (e.target instanceof HTMLAnchorElement) e.preventDefault();
}

Ответ 5

Я столкнулся с этим в другом HTML-коде и в его случае ему не хватало кавычек.

Например:

<form action="formHandler.php" name="yourForm" id="theForm" method="post">    
<input type="text" name="fname" id="fname" style="width:90;font-size:10>     
<input type="submit" value="submit"/>
</form>

В этом примере отсутствующая цитата во входном тексте fname просто сделает кнопку отправки непригодной для использования и форма не будет отправлена.

Конечно, это плохой пример, потому что я должен использовать CSS в первую очередь;) но в любом случае проверьте все свои одиночные и двойные кавычки, чтобы увидеть, что они закрываются должным образом.

Кроме того, если у вас есть теги, подобные центру, выведите их из формы.

<form action="formHandler.php" name="yourForm" id="theForm" method="post">  
<center> <-- bad

Как ни странно, это может повлиять.

Ответ 6

Привет из будущего.

Для ясности я просто хотел добавить (поскольку это было довольно высоко в Google) - теперь мы можем использовать

<button type="submit">Upload Stuff</button>

И сбросить форму

<button type="reset" value="Reset">Reset</button>

Кнопка "Проверить" печатает

Мы также можем прикрепить кнопки для отправки форм, таких как этот:

<button type="submit" form="myform" value="Submit">Submit</button>