У меня есть форма, которой нужен JavaScript, который будет включен для проверки, есть ли способ отключить кнопку отправки, когда JavaScript отключен, и попросите пользователя включить его сначала?
Отключите его по умолчанию и используйте JavaScript для включения.
<input type="submit" value="Submit" id="submitBtn" disabled />
<script type="text/javascript">
var _onload = window.onload || function()
{
document.getElementById('submitBtn').disabled = false;
}
_onload();
</script>
Таким образом, если JavaScript отключен, то кнопка также останется отключенной.
jQuery version:
<script type="text/javascript">
$(function(){
$('#submitBtn').attr('disabled', false);
});
</script>
Отключите его по умолчанию, и если есть javascript, то включите его.
.Не определяйте действие HTML формы, а определите только обработчик события onSubmit javascript. Если javascript не включен, то onSubmit не будет запускаться, но так как нет никакого действия с формой, кнопка отправки тоже ничего не сделает.
Вы также можете выбрать действие HTML формы, перейдя на страницу с ошибкой, объясняющей, что javascript должен быть включен, так что у пользователя будет некоторая обратная связь.
Или же вы можете начать с отключенной кнопки (как предлагают другие плакаты). Если вы это сделаете, вы также должны учесть сообщение на форме, указывающее на то, почему эта кнопка отключена. Удалите это сообщение с помощью javascript, если оно включено одновременно с нажатием кнопки.
.Есть решение для включения части. Для включения части можно использовать старый добрый тэг. (-:
<noscript>
<H1> It Wont work w/o javascript. Please Enable</h1>
</noscript>
Поскольку отключение кнопки программно в зависимости от окружения и оповещение о ней являются задачами, зависящими от какого-то скриптового языка (например, JavaScript), ответом будет нет :-/
.