2017-01-30 66 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('')可以正確處理用戶輸入案例。