Очистить область текста
В событии Onselect у меня есть скрипт:
$("#vinanghinguyen_images_bbocde").val('');
$("#vinanghinguyen_images_bbocde").val(vinanghinguyen_final_bbcode);
Я хочу очистить текстовую область id = "vinanghinguyen_images_bbocde" перед тем, как добавить к ней значение. но textarea добавить добавить добавить добавить и значение и не ясно. Я хочу очистить его, прежде чем добавить значение
Я использую uploadify здесь моя функция
<script type = "text/javascript" >
$(document).ready(function() {
vinanghinguyen_bbcode = '';
vinanghinguyen_final_bbcode = '';
vinanghinguyen_link = '';
vinanghinguyen_final_derect_link = '';
response = '';
$('#file_upload').uploadify({
'uploader' : '{SITE_FULL_URL}/uploadify/uploadify.swf',
'script' : '{SITE_FULL_URL}/uploadify/uploadify.php',
'cancelImg' : '{SITE_FULL_URL}/uploadify/cancel.png',
'folder' : 'data/picture_upload/2011',
'auto' : false,
'multi' : true,
'buttonText': '',
'onComplete': function(event, ID, fileObj, response, data) {
vinanghinguyen_bbcode = '[IMG]' + 'http://cnttvnn.com' + response + '[/IMG]' + '\n';
vinanghinguyen_final_bbcode = vinanghinguyen_final_bbcode + vinanghinguyen_bbcode;
vinanghinguyen_derect_link = 'http://cnttvnn.com' + response + '\n';
vinanghinguyen_final_derect_link = vinanghinguyen_final_derect_link + vinanghinguyen_derect_link;
$("#vinanghinguyen_images_bbocde").val('').val(vinanghinguyen_final_bbcode);
//$("#vinanghinguyen_images_derect_link").val(vinanghinguyen_final_derect_link);
$("#vinanghinguyen_result").show();
$(".uploadifyQueue").height(5);
},
'onSelect': function(event, ID, fileObj) {
$("#vinanghinguyen_images_bbocde").val('');
$("#vinanghinguyen_result").hide();
$(".uploadifyQueue").height(315);
},
});
});
</script>
Ответы
Ответ 1
Когда вы выполняете $("#vinanghinguyen_images_bbocde").val('');
, он удаляет все содержимое текстовой области, поэтому, если это не так, проблема, вероятно, в другом месте.
Это может помочь, если вы разместите немного большую часть своего кода, поскольку пример, который вы предоставили, работает.
Ответ 2
Используйте $('textarea').val('')
.
Проблема с использованием $('textarea').text('')
, или $('textarea').html('')
что это только удалит то, что было в исходном DOM, отправленном сервером. Если пользователь очистит его, а затем вводит новый вход, кнопка очистки больше не будет работать. Использование .val('')
корректно обрабатывает ввод пользователя.
Ответ 3
Это работает:
$('#textareaName').val('');
Ответ 4
Этот метод удаляет не только дочерние (и другие потоковые) элементы, но и любой текст в наборе согласованных элементов. Это потому что, согласно спецификации DOM, любая строка текста внутри элемент считается дочерним элементом node этого элемента.
$('textarea').empty()
Ответ 5
попробуйте это
$("#vinanghinguyen_images_bbocde").attr("value", "");
Ответ 6
Попробуйте это,
$('textarea#textarea_id').val(" ");
Ответ 7
Я просто попытался использовать этот код, и ответ @psynnott был прав, хотя мне нужно было знать, что он будет работать многократно, похоже, работает с jquery 1.7.1 >
Я изменил jfiddle на следующие
http://jsfiddle.net/Rjj9v/109/
$('#mytext').text('');
Это не новый ответ. @psynnott правильно. Я просто предоставляю более краткий пример, показывающий, что текстовое поле все еще работает после очистки, потому что если вы используете .val(""), текстовая область перестает работать
Ответ 8
Правильный ответ: $( "# selElement_Id option: selected" ). removeAttr ( "selected" );
Ответ 9
Я согласен с ответом @Jakub Arnold. Проблема должна быть где-то еще. Я не мог понять проблему, но нашел способ обойти.
Оберните ваш заинтересованный элемент родительским элементом и заставьте его html создать новый элемент с идентификатором, который вас интересует. Смотрите ниже
<div id="theParent">
<div id="vinanghinguyen_images_bbocde"></div>
</div>
'onSelect' : function(event,ID,fileObj) {
$("#theParent").html("<div id='vinanghinguyen_images_bbocde'></div>");
$("#vinanghinguyen_result").hide();
$(".uploadifyQueue").height(315);
}
Ответ 10
Я считаю, что проблема заключается просто в орфографической ошибке при написании bbcode как bbocde:
$("#vinanghinguyen_images_bbocde").val('')
должно быть:
$("#vinanghinguyen_images_bbcode").val('')
Ответ 11
Достаточно простой метод заключается в использовании метода JavaScript innerHTML.
document.getElementById("#id_goes_here").innerHTML = "";
Довольно простой и эффективный способ.