значение поля (для подсказки / юзабилити) показать, не имея ли это значение поля? - PullRequest
1 голос
/ 15 июля 2011

У меня есть форма, в которой предварительно указаны значения для удобства использования / подсказки - к сожалению, одно из этих полей проверено на соответствие сервлету, к которому у меня нет доступа.

Поэтому, когда я использую:

<input type="text" class="promocode" name="LLN" id="promo1" value="Enter promotion code" maxlength="40"  title="Promotion Code 1" onfocus="this.value=''; this.onfocus=null;">

Это не работает, потому что сервлет проверки видит, что поле заполнено, и затем запускает его в процессе проверки и возвращаетошибка (потому что это не правильный формат).

Я знаю, что если бы у меня было несколько js для работы, я мог бы запустить его только для значений, отличных от значений по умолчанию.

Но в этом случае я не уверен, как показать формуполе подсказок без заполнения значения.

Мысли?

Ответы [ 2 ]

0 голосов
/ 15 июля 2011

В зависимости от требований поддержки вашего браузера рассмотрите возможность использования атрибута placeholder . Я считаю, что есть плагины javascript, которые будут применять поддержку заполнителей к тем браузерам, которые не поддерживают ее изначально.

0 голосов
/ 15 июля 2011

Быстрое решение было бы добавить <span> поверх вашего ввода и скрыть его, когда вход получил фокус. Это даже не коснется ввода. Вы можете позиционировать диапазон, используя относительный / абсолютный. Я надеюсь, вам понравится это решение

HTML

<div class="inputContainer">
  <input type="text" id="theInput" />
  <span id="theSpan">Please fill this input!</span>
</div>

CSS:

 .inputContainer{position:relative;}
 #theSpan{position:absolute; top:0; left:0}

JS

    $('#theInput').focus(function(){
        $('#theSPan').hide()
    });
  $('#theInput').blur(function(){
       if($(this).val()==''){ $('#theSPan').show()}
    });
...