Я пытаюсь установить значение в поле textarea с помощью jquery со следующим кодом:
$("textarea#ExampleMessage").attr("value", result.exampleMessage);
Проблема в том, что после выполнения этого кода текст в текстовом поле не изменяется?
Однако при выполнении alert($("textarea#ExampleMessage").attr("value"))
возвращается вновь установленное значение?
Textarea не имеет атрибута value, его значение находится между тегами, то есть: <textarea>my text</textarea>
, это не похоже на поле ввода (<input value="my text" />
). Поэтому attr не работает :)
$("в текстовое поле#ExampleMessage и").функция val()
в jQuery просто волшебный.
Вы должны заметить, что область тег с помощью так для отображения и не в значении атрибута так же, как тег input.
<textarea>blah blah</textarea>
<input type="text" value="blah blah"/>
Вы должны использовать
$("textarea#ExampleMessage").html(result.exampleMessage)
или
$("textarea#ExampleMessage").text(result.exampleMessage)
зависит, если вы хотите, чтобы отобразить его как тегов HTML или обычный текст.
Расслабься, мальчики! он работает только с
$('#your_textarea_id').val('some_value');
у меня был тот же вопрос, поэтому я решил попробовать его в современных браузерах, (мы'вновь спустя полтора года после этот вопрос), и этот (`.Валь) работает
$("textarea#ExampleMessage").val(result.exampleMessage);
для
Я имел же проблема и это решение не't работа, но мы решили использовать HTML
$('#your_textarea_id').html('some_value');
На Android .Вэл
и .HTML-код
ничего'т работу.
$('#id').text("some value")
сделал свою работу.
Есть проблема : мне нужно сгенерировать HTML код из содержания данного разд. Затем, я должен поставить это чистый HTML-код в текстовое поле. Когда я использую функцию $(текста).функция val() такой :
$(текста).функция val("в некоторых html как < вход тип='текст' значение='' стиле=то"фон: URL-адреса('http://www.w.com/bg.gif') повторюсь-X центр; и" /> бла-бла" - а);
или
$('#idTxtArGenHtml').Вэл( $('idDivMain').формате HTML() );
У меня была проблема с Некоторые специальные символы ( & ' и" ), когда они находятся между quot. Но когда я использую функцию : $(текста).HTML-код() текст ОК.
Есть пример формы :
<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>
И код JavaScript/jQuery, которые Дон'т работу, чтобы заполнить textarea-это :
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
}
Наконец решение :
function onGenHtml(){
$('#idTxtArGenHtml').html( $("#idDivMain").html() );
$('#idTxtArGenHtml').parent().replaceWith( '<span>'+$('#idTxtArGenHtml').parent().html()+'</span>');
}
Хитрость заключается в обернуть textarea с тегом span, чтобы помочь с функцией replaceWith. Я'м не уверен, если это's очень чистый, но это'ы тоже работают прекрасно, добавить сырой HTML код в текстовое поле.
это не't значений магазине
<textarea value="someString">
вместо этого, он хранит ценности в таком формате:
<textarea>someString</textarea>
Так attr, который (на"ценности" и"Ну someString-то")
получает вас такой результат:
<textarea value="someString">someOLDString</textarea>.
попробуйте $(" и#textareaid и").на" Валь()
или `$(;#textareaid и").innerHTML будет вместо.
Это работает для меня.... Я построил книгу лица, стены...
Вот на основе моего кода:
в <textarea с именем="в message_wall и" ИД="и message_wall" и></textarea в>
// SETS MY TEXT AREA TO EMPTY (NO VALUE)
$('textarea#message_wall').val('');
Чтобы установить значение текстового поля из файла HTML (показать в виде HTML), вы должны использовать `.формате HTML( the_var ) - но как уже говорилось, Если вы попытаетесь установить его снова, это может (и скорее всего) не будет работать.
Вы можете исправить это путем опорожнения в textarea .пустая () и затем установить его снова
.формате HTML( the_var )`
Здесь'ы рабочая 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>
в
Мы можем либо использовать .функция val() или .текст() методы для установки значений. мы должны положить;привет" значения внутри Валь() как функция val (" у).
$(document).ready(function () {
$("#submitbtn").click(function () {
var inputVal = $("#inputText").val();
$("#txtMessage").val(inputVal);
});
});
Пример посмотрите здесь: http://www.codegateway.com/2012/03/set-value-to-textarea-jquery.html
Я попробовал с .функция val()
.текст()
.HTML-код ()
, и было несколько ошибок, используя jQuery, чтобы прочитать или установить значение textarea в... я эндап, используя нативный JS
$('#message').blur(function() {
if (this.value == '') { this.value = msg_greeting; }
});
Я думаю, здесь отсутствует один важный аспект:
$('#some-text-area').val('test');
работает только при наличии ID-селектор (#)
для селектора класса есть возможность использовать собственные ценности, как:
$('.some-text-area')[0].value = 'test';
Вы даже можете использовать ниже фрагмент.
$("textarea#ExampleMessage").append(result.exampleMessage);
Принятый ответ работает для меня, но только после того, как я понял, я должен был выполнить мой код после того, как страница закончит загружаться. В этой ситуации встроенный скрипт не't работа, я думаю, потому что #my_form было'т сделать загрузилось.
$(document).ready(function() {
$("#my_form textarea").val('');
});
Когда я с jQuery версии v1.4.4 на странице, ни один из этих работал. При введении в jQuery версии v1.7.1 на моей странице, это сработало, наконец. Так что в моем случае, это была моя версия jQuery, которая была причиной проблемы.
идентификатора ==> 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');
Просто использовать идентификатор textarea с его типом как это:
$("textarea#samplID").val()