将价值预先添加到textarea

时间:2016-07-15 08:01:13

标签: jquery html

我已创建此JQuery代码以预先添加textarea输入

$(document).ready(function() {
    var data = <?php echo $data; ?>;

    $('#standard_response').on('change', function() {
        var sequence = $(this).val();
        //Check each object in the data array
        $.each(data, function( index, obj ) {
            if(obj.sequence === sequence) {
                $('#description').prepend( obj.response );
            }
        });
        //$('#standard_response').select2('val', '');
    });
});

但它仅在textarea为空时才有效。

我希望它在光标所在的textarea末尾添加文本

我也尝试过:

$('#description').text( $('#description').text() + obj.response );

$('#description').text( $('#description').val() + obj.response );

但这些都不起作用

3 个答案:

答案 0 :(得分:2)

尝试:

$('#description').val( $('#description').val() + obj.response );

答案 1 :(得分:1)

假设#descriptiontextarea元素,您应该使用val()来设置其值。您可以为方法提供一个函数,以便在轻松附加新值之前添加。试试这个:

if (obj.sequence === sequence) {
    $('#description').val(function(i, v) {
        return obj.response + v;
    });
}

答案 2 :(得分:1)

使用val

var value = $('#description').val();
$('#description').val(value + obj.response );