Onselectイベントにはスクリプトがあります:
$("#vinanghinguyen_images_bbocde").val('');
$("#vinanghinguyen_images_bbocde").val(vinanghinguyen_final_bbcode);
値を追加する前に、クリアテキストエリアid = "vinanghinguyen_images_bbocde"が必要です。しかし、textarea add add add addとvalueであり、明確ではありません。値を追加する前にクリアしたい
私はここで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>
$("#vinanghinguyen_images_bbocde").val('');
を実行すると、textareaのすべてのコンテンツが削除されるため、それが起こっていない場合、問題はおそらく別の場所にあります。
提供した例が機能するため、コードの少し大きい部分を投稿すると役立つ場合があります。
$('textarea').val('')
を使用します。
$('textarea').text('')
、または$('textarea').html('')
の使用に関する問題は、サーバーから送信された元のDOMにあったもののみが消去されることです。ユーザーがクリアしてから新しい入力を入力すると、クリアボタンは機能しなくなります。 .val('')
を使用すると、ユーザー入力のケースが適切に処理されます。
これは動作します:
$('#textareaName').val('');
このメソッドは、子(および他の子孫)要素だけでなく、一致した要素のセット内のテキストも削除します。これは、DOM仕様に従って、要素内のテキストの文字列はその要素の子ノードと見なされるためです。
$('textarea').empty()
これを試して、
$('textarea#textarea_id').val(" ");
これを試して
$("#vinanghinguyen_images_bbocde").attr("value", "");
私はこのコードを使用しようとしましたが、@ psynnottの答えは正しかったのですが、繰り返し動作することを知る必要がありましたが、jquery 1.7.1で動作するようです>
Jfiddleを次のように変更しました http://jsfiddle.net/Rjj9v/109/
$('#mytext').text('');
これは新しい答えではありません@psynnott is correct
正解は$( "#selElement_Id option:selected")。removeAttr( "selected");です。
@Jakub Arnoldの答えに同意します。問題はどこかにあるはずです。私は問題を理解できませんでしたが、回避策を見つけました。
関係する要素を親要素でラップし、そのhtmlに関係するIDを持つ新しい要素を作成させます。下記参照
<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);
}