2012-11-19 90 views
1

我已經看到了這個例子漂浮如何在光標在文本區域中插入文本的TextArea:jQuery的插入文本光標所在位置

http://jsfiddle.net/adamadam123/bTUWa/5/

以上工作正常,但當我已經試過將其添加到自己的代碼(這是主要的jQuery)我覺得我不能讓它再工作 - 下面是我的代碼示例試圖使用功能:

http://jsfiddle.net/adamadam123/bbE48/6/

有人能幫助我嗎?第二個jsfiddle工作。注意:真的想要傳遞ID,因爲有很多不同ID的div,但所有的ID都有相同的textarea.classname。

三江源

<div id="100000000"> 
    <input id="insertPattern" type="button" value="insert pattern" /> 
    <textarea class="chatMessengerFooterTextArea">insert some text into this string</textarea> 
</div>​ 
+0

提醒您 'BR' 變量,它的現身爲 '假'。看起來像瀏覽器檢測沒有按預期工作。注意:我正在使用FF – BIOSTALL

+0

請不要發佈只包含jsfiddles的問題。這不是這個網站的工作原理。我需要能夠在不打開任何外部鏈接的情況下回答你的問題。 – meagar

回答

-1

你需要給textarea的本身的ID。你將:)傳遞給DIV,而不是textarea。

您的textarea更改爲這樣的事情:

<textarea id="myTextArea" class="chatMessengerFooterTextArea">insert some text into this string</textarea> 

而jQuery代碼到這一點:

$('input#insertPattern').click(function() { 
    alert('clicked me'); 
    insertEmoticonAtTextareaCursor('myTextArea', ':)'); 
}); 
+0

他不是。他在他的函數中有一個額外的jQuery find()來獲取textarea。 –

0

修改後的功能重新定義了txtarea變量是一個jQuery對象,而不是DOM對象。您需要使用.get(0)再次獲取DOM對象。

var txtarea = $("#"+ID).find('textarea.chatMessengerFooterTextArea').get(0); 
相關問題