2017-01-30 39 views
2

我改变文本区域中的一些文本,然后通过单击按钮正常清理。但问题是,当我想向文本区域添加新数据时,它不起作用,文本区域为空。我应该使用哪种方法来清理文本区域?

我应该使用哪种方法?

$(".button10").on('click', function reset() {  
    $.ajax({ 
     type: 'GET', 
     url:RestApi, 
     success:function(data3){ 
      var str = JSON.stringify(data3, undefined, 4); 
      $("#myTextArea").html(str); 
     }, 
    }); 
}); 

$(".button9").on('click', function reset() { 
    $('#myTextArea').val(''); 
}); 
+1

为什么你不使用'.val()'就像你在ajax调用之后清理textarea而不是'.html()'一样? –

+0

你试过$('#myTextArea')。val(null); – parik

回答

2

试试这个,

$(".button10").on('click', function reset() { 

$.ajax({ 
type: 'GET', 
url:RestApi, 
success:function(str){ 
    $("#myTextArea").val(str); 
}, 

});

});

$(".button9").on('click', function reset() { 
    $('#myTextArea').val(''); 

}); 
1

使用append在你的Ajax成功功能,如果你想保持目前的文本在您的textarea的。使用htmlval将取代作为参数传递的文本中的所有文本:

$("#myTextArea").append(str); 

如果你想清楚,并在您的textarea使用val代替html(从@Rushil Pachchigar CF答案)替换的文字:

$("#myTextArea").val(str); 
2

试试这个:

$(".button10").on('click', function reset() { 

$.ajax({ 
    type: 'GET', 
    url:RestApi, 
    success:function(data3){ 
    var str = JSON.stringify(data3, undefined, 4); 
    $("#myTextArea").val(str); 
     }, 
}); 

}); 


$(".button9").on('click', function reset() { 
     $('#myTextArea').val(''); 

}); 
3

使用$('textarea').val('');

使用$('textarea').text(''),或$('textarea').html('')对于这个问题的问题是,它只会抹去什么是服务器发送的原始DOM。如果用户清除它,然后输入新的输入,清除按钮将不再起作用。使用.val('')可以正确处理用户输入案例。

相关问题