2011-08-18 33 views
13

Tamam İhtiyacım olanı seçebileceğim cihazların bir listesi var. Düzenleme için 3 durumum var. Hiçbir cihaz seçilmediğinde, 1 cihaz seçildiğinde veya x cihazları seçildiğinde.jQuery - kullanıcı giriş metnini kaldırın textarea

Bir kullanıcı, textarea (commentField) içinde bir metin yazıp başka bir aygıtı düzenlemek için düzenlemeyi iptal ettiğinde sahip olduğum problem, textarea'da yazılan metnin geçersiz kalacağıdır. Yeni düzenleme için yeni iletişim penceresini bulduğumda, yorum alanı eski commentField öğesinden alınıyor (temizlenmemiş gibi)

Metni kaldırmak için aşağıdaki kodları denedim (ne zaman o zaman düğmeye basıldığında iptal ve ben yeni bir diyalog başlattığınızda), ama hiçbir şey çalışır: jQuery kullanarak bir textarea dan kullanıcı yazılan metni kaldırmak bilen herkes

$("#commentField").text(" "); 
$("#commentField").value = ' '; 

var mı ??

Şimdiden teşekkürler.

-Thor

+0

olası yinelenen [jquery içinde textarea değerini ayarlayın] (http://stackoverflow.com/questions/415602/set-value-of-textarea-in-jquery) – jtbandes

cevap

51

Sen .val() aradığınız:

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

Örnek:http://jsfiddle.net/andrewwhitaker/q6eLV/

+0

Bir milyon teşekkürler, işe yaradı :) –

+0

Bunun neden textarea'da bir değişiklik olayı tetiklemediğini biliyor musun? – user3281466

+1

@ user3281466: bir değeri programatik olarak ayarlamak, 'change' olayını tetiklemez.Değeri ayarladıktan sonra '.change '' i çağırmak isteseniz bunu manuel olarak kendiniz yapabilirsiniz. –

0

Böyle textarea metin kaldırabilirsiniz:

$("#commentField").html(""); 

DÜZENLEME: tamam, bu d Oes işe yaramıyor, ama gerçekten neden ilgimi çeker ve aşağı oyu anlarım. Her zaman textarea etiketleri arasındaki metnin innerHTML olduğunu ve html()'un bununla değiştirilmesi gerektiğini düşündüm. Girdi gibi textarea sahip olmak mantıklı olmaz mıydı? ya da sadece, textareas, tırnak işaretleri arasında yapışkan görünecek uzun miktarda metin içerdiğinden mi?

Düzenli javascript'i innerHTML ile kullanarak FF6'da benim için çalışır. textarea yana demo here

+0

-1 Ah ama yapamazsınız: http://jsfiddle.net/jamwaffles/bbdTC/ – Bojangles

+0

@JamWaffles, lütfen benim düzenlemeye bakın! –

+1

Aslında, aşağı çekmek burada adil değil; Aynı problemde sıkışmıştım, bu yüzden keman. Ayrıca, etiketler arasında olduğu için, '.html()' veya '.text()' nin çalışmış olacağını, ancak görünüşte olmadığını varsaymıştım. Belki jQuery 'textarea' için özel bir duruma sahiptir, bu yüzden diğer tüm girdiler gibi' .val() kullanır. – Bojangles

3

Eğer val() yöntemi kullanmak zorunda bu yüzden bir value özelliği olan bir giriş alanıdır. aslında var $("#commentField").val(" ");

1

deneyin Metin alanınızı temizlemek için
1)Bunu okumak için
.

-1

1) <textarea name="editor1" id="editor1" rows="10" cols="80"></textarea>
2) CKEDITOR.replace('editor1');
3) initiated = true;
size metin alanına
1) $("#editor1").val("your input value");
içinde metin yazmak için jQuery bu

$("#commentField").val(''); 
+0

Soru, CKEditor'a başvurmuyor. – rvighne

İlgili konular