Невозможно получить значение текстовой области, загруженное с ajax с использованием jquery в codeigniter - PullRequest
0 голосов
/ 25 марта 2020

У меня есть текстовая область, которая загружена с ajax:

   $comments=array(
    'name'=>'comments',
    'id'=>'comments',
   ;

 <div class="form-line">
 <label for="comment"><?=lang('comment')?></label>
 <?=form_textarea($comments)?>
 </div>

 <?php echo form_submit('submit','submit',['class'=>'btn submit_comment'])?>

, сейчас я отправляю и получаю это значение через jquery, но я не могу получить значение текстовой области.

   jQuery(document).on('click','.submit_comment',function(e){
        e.preventDefault();
        console.log('button clicked');
        var comments=jQuery('textarea#comments').text();
       })

Я получаю вывод: enter image description here

1 Ответ

0 голосов
/ 25 марта 2020

Чтобы получить значение textarea, вам нужно использовать .val() вместо .text(), например:

var comments = jQuery('textarea#comments').val();
console.log( comments );

Как указано в документах :

Метод .text() нельзя использовать для ввода данных или сценариев. Чтобы установить или получить текстовое значение элементов input или textarea, используйте метод .val(). Чтобы получить значение элемента скрипта, используйте метод .html().

DEMO:

// Set textarea value
$('#comments').val('This is some text here');

// Get textarea value
var comments = $('#comments').val();
console.log( comments );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h1>A Textarea Element</h1>
<textarea id="comments" rows="4" cols="50">
</textarea>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...