it-roy-ru.com

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

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

У кого-нибудь есть ретроспективный взгляд, на что мне смотреть?

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

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

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

РЕДАКТИРОВАНИЕ 3: Мы обнаружили фактическую проблему, это было то, что на странице была ссылка, содержащая href="#", и после нажатия на эту ссылку submit прекратил работать, потому что # был добавлен в конец URL и потому что action формы был пуст, так что выбрал URI из текущего URI, который содержал # в, так что вместо отправки браузер переходил на текущую страницу.

12
dhblah

Если вы не используете 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

13
lukeocom

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

14
Jyothu

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

4
Dan Csharpster

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

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

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

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

Я столкнулся с этим на 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

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

1
Adron

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

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

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

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

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

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

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

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

0
MattJHoughton