как прописать условия для полей input и textarea
у меня два поля input и textarea, мне нужно сделать следующее, если поля заполнены, должно всплыть окно с текстом, а если поле пустое, то другой текст
я совсем новичок, как можно это прописать, я сделала вот так, но алерт в любом случае появляется с первым текстом <form action="zxc.php" method="POST"> <input class="author" type="text" name="author"/> <textarea class="com" name="comment" cols="50" rows="5"> </textarea> <input class="button" name="button" type="submit" onclick="moderation_0(this)" value="Отправить" /> </form> function moderation_0(sub){ var textarea = document.getElementsByTagName('textarea'); var input = document.getElementsByTagName('input'); if(textarea != 0 && input != 0){ alert('Спасибо, Ваш комментарий отправлен на модерацию'); } else{ alert('Поля ввода текста не заполнены'); } } |
function moderation_0(sub){ var textarea = document.getElementsByClassName('author')[0]; var input = document.getElementsByClassName('com')[0]; if(textarea && input){ alert('Спасибо, Ваш комментарий отправлен на модерацию'); } else{ alert('Поля ввода текста не заполнены'); } } |
Не помогло(
пустые или не пустые поля, срабатывает в любом случае первый алерт |
Nailya, ой, упустил кое что.
function moderation_0(sub){ var textarea = document.getElementsByClassName('author')[0].value; var input = document.getElementsByClassName('com')[0].value; if(textarea && input){ alert('Спасибо, Ваш комментарий отправлен на модерацию'); } else{ alert('Поля ввода текста не заполнены'); } } |
это скрипт почему-то реагирует только на поле input: я попробовала заполнить только input, поле textarea оставила пустым, и у меня сработал
первый алерт |
Вот так заработало)
function moderation_0(sub){ var textarea = document.getElementsByClassName('com')[0].value; if(textarea != ''){ alert('Спасибо, Ваш комментарий отправлен на модерацию'); } else{ alert('Поля ввода текста не заполнены'); } } |
Цитата:
Ловкость рук и никакого мошейничества :) <form action="zxc.php" method="POST"> <input class="author" id="author" type="text" name="author"/> <textarea class="com" id="comment" name="comment" cols="50" rows="5"></textarea> <input class="button" name="button" type="submit" onclick="moderation_0()" value="Отправить" /> </form> function moderation_0() { alert((document.getElementsById('author').value != '' && document.getElementsById('comment').value != '') ? ''Спасибо, Ваш комментарий отправлен на модерацию' : 'Поля ввода текста не заполнены'); } |
Или можно добавить ID, так проще вроде )
function moderation_0(){ var textarea = document.getElementById('comment').value; var input = document.getElementById('author').value; if(textarea.length && input.length){ alert('Спасибо, Ваш комментарий отправлен на модерацию'); document.getElementById('submit').submit(); } else{ alert('Поля ввода текста не заполнены'); } } <form action="zxc.php" method="POST" id="submit"> <input class="author" type="text" name="author" id="author"/><br> <textarea class="com" name="comment" cols="50" rows="5" id="comment"> </textarea><br> <input class="button" name="button" type="button" onclick="moderation_0()" value="Отправить" /> </form> еще тип последнего инпута сделал button, чтобы форма не сабмитилась в случае пустых полей. сабмит устроен через эту строку - document.getElementById('submit').submit(); |
Цитата:
|
NeoN, да да, не заметил просто. :)
|
Часовой пояс GMT +3, время: 01:59. |