输入后加载到文本区域内

Loading inside a textarea after typing

<textarea id='txedit'></textarea>
<button id='btnload'>LOAD</button>

$('#btnload').on('click', function(){
    $('#txedit').load('test.php');
});

txedit 中输入任何内容之前,上面的代码有效,即 test.php 被加载到 txedit.

txedit 中输入一个字母后 - 单击 btnload 不会加载 test.php

这是因为 <textarea> 元素的独特 属性。当你把内容 in-between 标签,像这样:

<textarea> I'm in the middle! </textarea>

...该文本用作 "default" 占位符文本,一旦用户开始输入,它就不再使用,即使您动态更改它 .当您调用 $('#txedit').load() 时,JQuery 不会将 AJAX 调用的值作为文本值放入文本区域,而是将其作为默认文本放入标签之间!

您要做的是将 JQuery 加载的结果传递给文本区域的 value,如下所示:

<textarea id='txedit'></textarea>
<button id='btnload'>LOAD</button>
<script>
$('#btnload').on('click', function(){
    $.get('test.php', function(res){
        $('#txedit').val(res);
    })
});
</script>