Как очистить содержимое поля ввода текста HTML, используя Jquery

У меня есть HTML текстовое поле, которое может скрыть.

При сокрытии хочу очистить текстовое поле.

Я использовал это, и это не работает.

$('#id').val("");

И я попробовал $('#id').text(""); также.

Было удалено все текстовое поле.

4 ответа

Это правильно:

$('#id').val('');

Тем не менее, ваша часть 2 интересна.

$('#id').text("");

Это не должно создавать поведение, которое вы описываете. Я ожидаю, что вы ссылаетесь на родительский объект, а не <input> непосредственно.

Что еще происходит с вашим кодом... потому что это работает для меня...

<input id="id">
<input id="clear" type="button" value="Clear">

а также

$('#clear').click(function(){
    $('#id').val('');    
});

Рабочий пример: http://jsfiddle.net/jasongennaro/xrxU8/

Пожалуйста, попробуйте это:

 $('#id').attr("value","");

При условии, что TheTextField это идентификатор вашего поля ввода, это отлично работает.

$('#TheTextField').val("");
$('#TheTextField').hide();

Во всяком случае, если вы используете FireBug и вы смотрите на поле ввода в то время как скрытые, вы увидите, что value Атрибут все еще имеет значение, которого он на самом деле не имеет, но когда вы показываете его снова:

$('#TheTextField').val("");
$('#TheTextField').hide();
$('#TheTextField').show();

поле ввода, как вы увидите, отображается в браузере, в отличие от того, что вы видите в FireBug, оно больше не имеет значения.

Другие вопросы по тегам