Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
37 / 37 / 6
Регистрация: 20.11.2011
Сообщений: 194
1

Если текстовое поле пустое, должен показываться span после нажатия на кнопку, если нет, то span не появляется

13.02.2014, 05:37. Просмотров 1056. Ответов 4
Метки нет (Все метки)

не работает следующий код. Если текстовое поле пустое, должен показываться span после нажатия на кнопку, если нет, то span не появляется:


Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Название документа</title>
    <style>
      span {
        display: none;
      }
    </style>
  </head>
  <body>
 
  
    <form>
      <input id="inp1" type="text"><span id="warning">введите текст</span><br>
      <button onclick="foo();">кнопка</button>
    </form>
    
    <script>
      function foo() {
        var x = document.getElementById("inp1").value;
        var y = document.getElementById("warning");
        if (!x) y.style = "display: inline";
        else y.style = "display: none";
      }
    </script>
 
  </body>
</html>
Добавлено через 7 минут
если вместо button использовать input с атрибутом type="button", то все ок, почему с элементом button не работает?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.02.2014, 05:37
Ответы с готовыми решениями:

Выдать ошибку, если текстовое поле пустое
Есть форма UserForm3, на ней два текстовых поля txt3 и txt4 и кнопка CommandButton4 (Ввод). Если в...

Вытягивание из базы в текстовое поле, после нажатия на кнопку в PHP
Привет, мир! Можете помочь найти мою ошибку? Пишу след. вещь: Есть текстовая форма. Рядом...

<span align="left"> Заявитель: Фамилия </span> <span align="right">_____</span><br>
Какие теги использовать и как чтоб фраза Заявитель: Фамилия И.О. была слева на странице, а в той...

Скрыть span при нажатии вне этого span js
Подскажите пожалуйста, есть код: $(document).ready( function() { ...

4
Эксперт С++
5810 / 3461 / 356
Регистрация: 08.02.2010
Сообщений: 7,448
13.02.2014, 08:04 2
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Название документа</title>
    <style>
      span {
        display: none;
      }
    </style>
  </head>
  <body>
 
  
    <form>
      <input id="inp1" type="text"><span id="warning">введите текст</span><br>
      <button type="button" onclick="foo();">кнопка</button>
    </form>
    
    <script>
      function foo() {
        var x = document.getElementById("inp1").value;
        var y = document.getElementById("warning");
        y.style.display = (/^\s*$/).test(x + '') ? 'inline' : 'none'
      }
    </script>
 
  </body>
</html>
1
37 / 37 / 6
Регистрация: 20.11.2011
Сообщений: 194
13.02.2014, 17:28  [ТС] 3
спасибо, так работает, но все же хотелось бы узнать, что я не так написал, почему мой вариант не работает как надо?
0
Эксперт С++
5810 / 3461 / 356
Регистрация: 08.02.2010
Сообщений: 7,448
13.02.2014, 17:49 4
Лучший ответ Сообщение было отмечено Wizout как решение

Решение

Нужно было указывать тип кнопки button. По умолчанию браузеры должны использовать тип submit, если атрибут type не был указан (хотя старые версии IE использовали button). <button type="submit"> выполняет отправку формы, что у тебя и происходило, вследствие чего происходила перезагрузка страницы; в этом можно убедиться, если убрать атрибут type и в form добавить onsubmit="return false" — тогда отправка формы не происходит.
1
37 / 37 / 6
Регистрация: 20.11.2011
Сообщений: 194
13.02.2014, 18:10  [ТС] 5
Спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.02.2014, 18:10

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Взять html - содержимое span внутри span
Здравствуйте. Есть такая конструкция. &lt;tr&gt; &lt;span&gt;тут какой-то код&lt;span class=&quot;k&quot;&gt;тут...

Создать кнопку и текстовое поле. При нажатии на кнопку ввести в текстовое поле текущее время
Создать кнопку и текстовое поле. При нажатии на кнопку ввести в текстовое поле текущее время .

Если смотреть видео в контакте, и если распахнуть видео на весь экран, то звук идет, а изображения нет(!). Если нажать на эту кнопку (на картинке об
Если смотреть видео в контакте, и если распахнуть видео на весь экран, то звук идет, а изображения...

A potentially dangerous Request.Form value was detected from the client (Name="<span>text</span>")
Помогите, уже изжил себя. =( Суть в том, что у меня есть текстовое поле и когда я в него записываю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.