2012-03-27 101 views
0

基本上我試圖複製的功能是@reply系統,因爲它在StackOverflow上工作。我有一個評論列表,我希望用戶能夠鍵入@並查看以前所有評論中的用戶名建議。如何在多行<textarea>中實現自動完成?

我只找到適用於簡單<input type="text">的解決方案,但不適用於多行<textarea>

我並不在意與IE或舊版瀏覽器的兼容性。

回答

1

基本上,你想要做什麼是附加keyup事件處理程序的文本區域,並在處理程序,你需要按下CTRL + 2組合鍵時趕上。當你看到這個時,你需要顯示一個包含你的評論列表的彈出窗口。當選擇評論(點擊)時,將所選註釋插入textarea的光標位置。這是如何做最後一部分的一個很好的例子 - http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript。以前的一切都很簡單。

+0

這裏是一個較新一點的例子 - http://stackoverflow.com/questions/1064089/inserting-a-text-where-cursor-is-using-javascript-jquery。 – tjscience 2012-03-27 00:41:50