2012-11-12 101 views
0

如何獲取ExpressionEngine(前端)中評論的原始代碼?從ExpressionEngine中的評論獲取原始代碼

事情是這樣的:如果註釋包含代碼或HTML,如[quote] -Tags,則ee-native {comment} -Tag會將此作爲<blockquote>Life is like a box of…呈現......但我怎樣才能獲得像[quote]Life is like a box of…這樣的原始代碼?

我目前正在爲本地EE評論撰寫報價功能(前端/ JavaScript)。到目前爲止,我已經使用jQuery.text()或.html()...但兩種方式你都沒有標籤(.text())或html標籤(.html())。 沒有辦法獲得原始評論代碼(例如到數據屬性或腳本標籤)以便以後使用JavaScript?

編輯(1):我試過SQL - 這是唯一/最好的方式來做到這一點?

<blockquote data-raw="{exp:query sql="SELECT exp_comments.comment AS comment_raw FROM exp_comments WHERE exp_comments.comment_id = {comment_id} "}{comment_raw}{/exp:query}"> 
    {comment} 
</blockquote> 

編輯(2):的SQL工作正常,但如果有原始註釋代碼內",整個事情符,因爲瀏覽器認爲這是«數據原料的收盤報價» - 屬性: - /有沒有辦法'掩蓋'所有人物? ("'<>等)

編輯(3):我現在用一個<script> -Tag插入{} comment_raw -code,這樣的人物請勿打擾。

回答

0

您最好通過ajax調用檢索原始評論,而不是爲頁面上的每個評論添加查詢。您可以避免性能下降,也不必擔心在數據屬性中存儲大型字符串。我可能會做這樣的事情:

  • WHERE comment_id = '{segment_X}'

  • 創建包含{exp:query}標籤的新「get_comment」模板當用戶點擊的答覆/報價按鈕使用jQuery.get()發送一個請求您的get_comment模板,根據回覆按鈕上的data-commentid屬性傳遞comment_id。

  • 使用.get()響應更新輸入值。