Saya mencoba untuk mengatur nilai dalam textarea lapangan dengan menggunakan jquery dengan kode berikut:
$("textarea#ExampleMessage").attr("value", result.exampleMessage);
Masalah adalah, setelah kode ini dijalankan, hal ini tidak mengubah teks dalam textarea?
Namun ketika melakukan sebuah peringatan($("textarea#ExampleMessage").attr("nilai"))
yang baru menetapkan nilai yang dikembalikan?
`$("textarea#ExampleMessage").val () di jquery hanya sihir.
Anda harus melihat bahwa textarea tag menggunakan html batin untuk menampilkan dan tidak dalam nilai atribut sama seperti tag input.
<textarea>blah blah</textarea>
<input type="text" value="blah blah"/>
Anda harus menggunakan
$("textarea#ExampleMessage").html(result.exampleMessage)
atau
$("textarea#ExampleMessage").text(result.exampleMessage)
tergantung pada apakah anda ingin menampilkannya sebagai tag html atau teks biasa.
saya memiliki pertanyaan yang sama jadi saya memutuskan untuk mencobanya di browser yang ada saat ini (kita're satu setengah tahun kemudian di waktu setelah pertanyaan ini), dan ini (.val
) karya
$("textarea#ExampleMessage").val(result.exampleMessage);
untuk
Pada android .val
dan .html
didn't bekerja.
$('#id').text("some value")
melakukan pekerjaan.
Ada masalah : saya perlu untuk menghasilkan kode html dari mengandung yang diberikan div. Kemudian, saya harus menempatkan ini baku kode html di textarea. Ketika saya menggunakan fungsi $(textarea).val() seperti ini :
$(textarea).val("beberapa html seperti < input type='text' nilai='' style="background: url('http://www.w.com/bg.gif') repeat-x center;" /> bla bla");
atau
$('#idTxtArGenHtml').val( $('idDivMain').html() );
Saya punya masalah dengan beberapa karakter khusus ( & ', " ) ketika mereka antara quot. Tapi ketika saya menggunakan fungsi : $(textarea).html() teks adalah ok.
Ada contoh bentuk :
<FORM id="idFormContact" name="nFormContact" action="send.php" method="post" >
<FIELDSET id="idFieldContact" class="CMainFieldset">
<LEGEND>Test your newsletter» </LEGEND>
<p>Send to à : <input id='idInpMailList' type='text' value='[email protected]' /></p>
<FIELDSET class="CChildFieldset">
<LEGEND>Subject</LEGEND>
<LABEL for="idNomClient" class="CInfoLabel">Enter the subject: * </LABEL><BR/>
<input value="" name="nSubject" type="text" id="idSubject" class="CFormInput" alt="Enter the Subject" ><BR/>
</FIELDSET>
<FIELDSET class="CChildFieldset">
<input id="idBtnGen" type="button" value="Generate" onclick="onGenHtml();"/>
<input id="idBtnSend" type="button" value="Send" onclick="onSend();"/><BR/><BR/>
<LEGEND>Message</LEGEND>
<LABEL for="idTxtArGenHtml" class="CInfoLabel">Html code : * </LABEL><BR/>
<span><textarea name="nTxtArGenHtml" id="idTxtArGenHtml" width='100%' cols="69" rows="300" alt="enter your message" ></textarea></span>
</FIELDSET>
</FIELDSET>
</FORM>
Dan javascript/jquery kode yang don't bekerja untuk mengisi textarea adalah :
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
}
Akhirnya solusi :
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
$('#idTxtArGenHtml').parent().replaceWith( '<span>'+$('#idTxtArGenHtml').parent().html()+'</span>');
}
Trik membungkus textarea dengan tag span untuk membantu dengan ganti fungsi. I'm tidak yakin jika ini's sangat bersih, tapi itu's bekerja sempurna juga menambah baku kode html di textarea.
textarea doesn't menyimpan nilai-nilai sebagai
<textarea value="someString">
sebaliknya, ia menyimpan nilai-nilai dalam format ini:
<textarea>someString</textarea>
Jadi attr("nilai","someString")
anda mendapat hasil seperti ini:
<textarea value="someString">someOLDString</textarea>.
mencoba $("#textareaid").val()
atau $("#textareaid").innerHTML
sebagai gantinya.
Ia bekerja untuk saya.... Aku telah membangun face book dinding...
Berikut ini adalah dasar dari kode saya:
<textarea name="message_wall" id="message_wall">// SETS MY TEXT AREA TO EMPTY (NO VALUE)
$('textarea#message_wall').val('');
Untuk mengatur textarea nilai dikodekan HTML (untuk tampilkan sebagai HTML) anda harus menggunakan .html( the_var )
tetapi seperti disebutkan jika anda mencoba dan mengatur lagi mungkin (dan mungkin) tidak akan bekerja.
Anda dapat memperbaiki hal ini dengan mengosongkan textarea .kosong()
dan kemudian menetapkan itu lagi .html( the_var )
Berikut ini's bekerja JSFiddle:
jQuery(function($){
$('.load_html').click(function(){
var my_var = $(this).data('my_html');
$('#dynamic_html').html( my_var );
});
$('#clear_html').click(function(){
$('#dynamic_html').empty();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<textarea id="dynamic_html"></textarea>
<a id="google_html" class="load_html" href="#" data-my_html="<a href="google.com">google.com</a>">Google HTML</a>
<a id="yahoo_html" class="load_html" href="#" data-my_html="<a href="yahoo.com">yahoo.com</a>">Yahoo HTML</a>
<a id="clear_html" href="#">Clear HTML</a>
Kita bisa menggunakan .val() atau .teks() metode untuk menetapkan nilai-nilai. kita perlu menempatkan nilai dalam val() seperti val("hello").
$(document).ready(function () {
$("#submitbtn").click(function () {
var inputVal = $("#inputText").val();
$("#txtMessage").val(inputVal);
});
});
Cek contoh di sini: http://www.codegateway.com/2012/03/set-value-to-textarea-jquery.html
Saya mencoba dengan .val()
.teks()
.html()
dan memiliki beberapa bug menggunakan jQuery untuk membaca atau nilai yang ditetapkan dari textarea... aku endup menggunakan native js
$('#message').blur(function() {
if (this.value == '') { this.value = msg_greeting; }
});
Saya pikir ada yang hilang salah satu aspek penting:
$('#some-text-area').val('test');
bekerja hanya ketika ada ID selector (#)
untuk pemilih kelas ada pilihan untuk menggunakan native nilai seperti:
$('.some-text-area')[0].value = 'test';
Jawaban yang diterima bekerja untuk saya, tapi setelah saya sadar saya harus mengeksekusi kode saya setelah halaman selesai loading. Dalam situasi ini inline script didn't bekerja, saya kira karena #my_form itu't dilakukan loading belum.
$(document).ready(function() {
$("#my_form textarea").val('');
});
Ketika saya telah JQuery v1.4.4 dalam halaman, yang keduanya bekerja. Ketika menyuntikkan JQuery v1.7.1 ke halaman saya, bekerja akhirnya. Jadi dalam kasus saya, itu saya versi JQuery yang menyebabkan masalah.
id ==> textareaid
======================
var script1 = document.createElement("script");
script1.src = "http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js";
document.body.appendChild(script1);
var script2 = document.createElement("script");
script2.type = "text/javascript";
script2.innerHTML = "var $jq171 = $.noConflict();";
document.body.appendChild(script2);
$jq171('#textareaid').val('xxx');