2017-02-09 79 views
0

我遇到了麻煩觸發textarea更改。我遇到的問題是,只有當我手動輸入文本區域時(即當文本區域處於焦點中時)纔會觸發事件。如何在javascript上觸發textarea更改?

當textarea變得焦點不清時,我真的會爲btnSpeak.click()調用textarea。

$('#chat').bind('input propertychange',function(){ 
    btnSpeak.click(); 
}); 

下面的代碼顯示了我的聊天應用程序中的文本區域稱爲$chat中填充數據(串)。

socket.on('new message', function (data) { 
    $chat.append(data); 

}); 

所以整個想法是,在發送郵件時,文本區域會被填充,最後用JavaScript檢測textarea的變化和執行btnSpeak.click()。根據註釋

+1

'$ chat.append(數據).trigger( 「輸入」)'? – nnnnnn

+0

這是socket.io嗎?你應該提到這一點。 – taco

+0

@nnnnnn發表評論作爲回答。 –

回答

0

回答@nnnnnn !: $ chat.append(數據).trigger( 「輸入」)

0

嗯,我想我有這個SLOUTION ..

$(document).ready(function() { 
    $('textarea').trigger('change'); 
}); 

但這隻會在通過jQuery添加更改事件時觸發。 如果沒有,那麼試試下面的代碼片段

$('textarea').get(0).change();