2012-12-19 91 views
1

我希望能夠在不浪費任何時間看似幾乎可以回答的帖子的情況下做到這一點,但不要這樣做。謝謝你的幫助。 我想點擊Book,並將'lit:'的值輸入或附加到名爲Discussion的文本區域中,其中某些文本已經駐留在該文本區域中。請糾正我的錯誤,讓我剩下的四個腦細胞能夠快樂。謝謝。onClick將文字插入或附加到文本區域

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 

<php $m=1;?> 

<Book>Book</Book> 
<textarea name="Discussion[]" class="cleanup mceEditor" 
id="Discussion<?php echo $m;?>"><?php echo $row_review['Discussion']; ?></textarea> 


<script type="text/javascript"> 
$(document).ready(function(){ 
    $("Book").click(function(){ 
     $("#Discussion<?php echo $m;$m++;?>").val('lit:'); 
    }); 
}); 
</script> 
+0

當你點擊按鈕時是否發生了什麼?是所有的文字替換,還是沒有改變?如果是後者,它可能與你使用Tiny MCE有關。我知道一些加載後從textarea中讀取的插件類型,然後忽略對它們的任何更改,因爲它在其他地方管理內容。 –

+0

我現在檢查一下。沒有,沒有快樂。 – AllThisOnAnACER

+0

那麼,你在使用TinyMCE嗎?如果是這樣,那就是爲什麼這些東西都沒有工作。請參閱下面的答案。 –

回答

2

假設唯一的問題是,你希望它的文本追加,而不是取代它,你可以做這樣的事情在onclick功能:

var $elm = $("#Discussion<?php echo $m;$m++;?>") 
$elm.val($elm.val() + 'lit:'); 

這將追加「上火」到textarea。

+0

好吧,讓我給一個鏡頭。首先要溫暖我的咖啡。 – AllThisOnAnACER

+0

我打算輸入類似的東西,所以+1,即使以$開頭的對象總是讓我的眼睛回頭檢查。 –

+0

好的,謝謝。我將以此作爲批准的答案,儘管我的網頁上還有其他內容必須出現錯誤。我已經嘗試了今天發現的每一個好的片段,而且它們都不起作用。感謝您的時間和片段。 – AllThisOnAnACER

1

如果你使用TinyMCE的(我根據你在你的代碼有mceEditor類做一個假設),你需要做這樣的事情:

tinyMCE.execCommand('mceInsertContent',false,'lit:'); 

這將插入「點亮:「文字在光標所在的位置。如果你願意,你可以更有趣,並且可以加入撤銷:

tinyMCE.execCommand('mceBeginUndoLevel'); 
tinyMCE.selectedInstance.execCommand('mceInsertContent', false, 'lit:'); 
tinyMCE.execCommand('mceEndUndoLevel'); 
+0

看起來真的很有趣。它是否進入tinymce.js文件或頁面上的某個位置? – AllThisOnAnACER

+0

我沒有tinyMCE可供測試,但我認爲tinyMCE變量設置爲指向任何活動的tinyMCE實例。你應該把它放在你的$(「Book」)。click(function(){});部分,而不是$(「#Discussion <?php echo $ m; $ m ++ ;?>」)。val('lit:');碼。 –

+0

好的,謝謝大家。讓我對你的想法進行一點處理,看看我能否實現。向大家低頭。 – AllThisOnAnACER