Обновить значение textarea с помощью jQuery

Я использую Bootstrap WYSIHTML5 HTML-редактор в моей форме, как

 <input type="text" name="product" id="product">
 <textarea name="description" id="description" class="textarea" placeholder="Place some text here" style="width: 100%; height: 200px; font-size: 14px; line-height: 18px; border: 1px solid #dddddd; padding: 10px;">

 </textarea>
 <input type="product_code" name="product_code" id="product_code">

и использование Ajax для получения сведений о продукте, когда продукт введен в поле ввода и требуется обновить текстовое поле с описанием

  <script type="text/javascript">
    $(document).ready(function($){
      $('#product').autocomplete({
        source:'<?php echo Router::url(array("controller" => "Products", "action" => "search")); ?>',
        minLength: 1
      });


      $('#product').blur(function() {
        var p_term = $(this).val();

        if (p_term) {
          var dataString = 'term='+ p_term;
          //alert(dataString);

          $.ajax({
              dataType:'json',
              type: "POST",
              url: '/products/ajax-search-product',
              data: dataString,
              cache: false,
              success: function(data) {

                /* set values to input field */
                $('#description').val(data['description']);
                $('#product_code').val(data['product_code']);

              },
              error: function(xhr, ajaxOptions, thrownError) {
                alert(xhr.status);
                alert(thrownError);
              }
          });
        }
      });

    });
</script>

Но этот код не обновляет значения поля textarea, пока $('#product_code').val(data['product_code']); работает нормально.

Я пытался напечатать значение textarea alert($('#description').val()); и он работает и печатает предварительно заполненное значение в поле textarea.

Редактировать 2

Консольный вывод:console.log(data);

Object { 
  id: 1, 
  product_code: "765457", 
  SKU: "", 
  title: "yuphoria screen guard", 
  description: "yuphoria screen guard", 
  short_description: "yuphoria screen guard", 
  15 more… 
}

Я пробовал с этим

$('#description').val(data['description']);    // this not working
alert(data['description']);                    // this working

Здесь только один id="description" и больше нигде не пользуется.

1 ответ

Я нашел это решение, надеюсь, оно поможет.

$('iframe').contents().find('.wysihtml5-editor').html('your new content here');

Другие вопросы по тегам