Ответ 1
Если вы используете чистую JS, вы можете просто сделать это:
var input = document.getElementById('myInput');
if(input.value.length == 0)
input.value = "Empty";
Вот демо: http://jsfiddle.net/nYtm8/
Итак, у меня есть поле ввода, если оно пустое, я хочу, чтобы его значение было словами "пустым", но если есть какое-либо введенное значение, я хочу, чтобы значение было введенным значением. Я хочу использовать javascript для этого, любую идею, как это можно сделать?
ОБНОВЛЕНИЕ: Извините, я не думаю, что я объяснил это слишком хорошо. Я не имею в виду текст заполнителя. Я имею в виду захваченное значение. Поэтому, если он пуст, захваченный val() для него должен быть "пустым", если он заполнен, захваченный val() для него должен состоять в том, что val()
Если вы используете чистую JS, вы можете просто сделать это:
var input = document.getElementById('myInput');
if(input.value.length == 0)
input.value = "Empty";
Вот демо: http://jsfiddle.net/nYtm8/
Я предполагаю, что это то, что вы хотите...
Когда форма отправлена, проверьте, пусто ли это значение, и если да, отправьте value = пусто.
Если это так, вы можете сделать следующее с помощью jQuery.
$('form').submit(function(){
var input = $('#test').val();
if(input == ''){
$('#test').val('empty');
}
});
HTML
<form>
<input id="test" type="text" />
</form>
http://jsfiddle.net/jasongennaro/NS6Ca/
Нажмите на свой курсор в поле, а затем нажмите Enter, чтобы увидеть, как форма представляет значение.
Вы можете установить функцию обратного вызова для события onSubmit формы и проверить содержимое каждого поля. Если он ничего не содержит, вы можете заполнить его строкой "empty":
<form name="my_form" action="validate.php" onsubmit="check()">
<input type="text" name="text1" />
<input type="submit" value="submit" />
</form>
и в js:
function check() {
if(document.forms["my_form"]["text1"].value == "")
document.forms["my_form"]["text1"].value = "empty";
}
Это можно сделать, используя HTML5 placeHolder или используя JavaScript. Оформить заказ этот пост.
Вы можете сделать это:
var getValue = function (input, defaultValue) {
return input.value || defaultValue;
};
Я думаю, что самый простой способ решить эту проблему, если вам нужно всего лишь в 1 или 2 ящиках, - это использовать функцию ввода "onsubmit" HTML.
Проверьте это, и я объясню, что он делает:
<input type="text" name="val" onsubmit="if(this == ''){$this.val('empty');}" />
Итак, мы создали текстовое поле HTML, присвоили ему имя ( "val" в этом случае), а затем мы добавили код onsubmit, , этот код проверяет, соответствует ли текущий поле ввода пуст, и если оно есть, то после отправки формы оно заполнит его словами пустым.
Обратите внимание на, этот код также должен отлично функционировать при использовании тега HTML "Placeholder", поскольку тег-заполнитель фактически не присваивает значение поля ввода.