2016-03-13 3 views
-1

Этот код показывает 0, но я хочу показать ввести местоположение с заднего конца скрытым значением 0Как использовать значение с заполнителем

<input type="text" name="location" value="0" placeholder="Enter Location" /> 

Как это сделать, пожалуйста, помогите мне исправить маленькую проблему.

Благодаря

+0

Если вы получили ответ на свой вопрос: [Что я должен делать, когда кто-то отвечает на мой вопрос] (http://stackoverflow.com/help/someone-answers) –

ответ

0

Удалить value="0" из разметки и он будет работать. value="0" походит на то, что вы набрали 0, поэтому он не отображает местозаполнитель

2

Атрибут value относится к значению внутри текстового поля.

placeholder видна только в том случае, если текстовое поле не имеет значения.

из-за этого невозможно установить атрибут value и по-прежнему видеть placeholder.

попробуйте использовать пользовательский атрибут для фонового кода:

data-value

0

Unfortuntaly, любое дополнительное к входу значение, делает заполнитель пропадает. Что вы можете сделать, это добавить значение в формах onsubmit обработчик, если значение не было введено

<form id="myForm"> 
    <input type="text" name="location" placeholder="Enter Location" /> 
</form> 

<script> 
    document.getElementById('myForm').addEventListener('submit', function() { 
     var input = this.getElementsByName('location')[0]; 
     if (input.value.length === 0) input.value = '0'; 
    }) 
</script> 

Таким образом, ноль посылается на сервер, если значение не было введено. Возможно, было бы проще просто проверить serveride, если вход является частью данных формы.

+0

привет получил ошибку неперехваченным TypeError: Не удается прочитать свойство addEventListener из null – msalman

+0

Тогда ваша форма не имеет правильного идентификатора, или вы добавили скрипт перед формой. Обратите внимание, что приведенный выше код работает, как написано, а не для любой мыслимой формы, которая не соответствует селектору – adeneo

+0

. Теперь я вставляю скрипт после формы и не обнаруживает никаких ошибок, но не работает – msalman

0

Я думаю, что одним из решений было бы поставить только место-держатель в html & присвоить значение по умолчанию в JS (если null).

$('form').submit(function(){ 
 
    var input = $('#test').val(); 
 
    if(input == ''){ 
 
     $('#test').val('empty'); 
 
    } 
 
    alert($('#test').val()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> 
 
<form> 
 
    <input id="test" type="text" placeholder="Type here" /> 
 
    <input type="submit" /> 
 
</form>

+0

, у вас есть код примера – msalman

+0

Пример: [ссылка] (http://jsfiddle.net/ 1k17dgmq /) –

+0

@msalman это решило вашу проблему? –