2016-12-22 46 views
1

我想用HTML標籤顯示文本。動態驗證HTML

我有下面的代碼:

<pre th:id="'answer' + ${answerStat.index}"></pre> 
<script type="text/javascript" th:inline="javascript"> 
/*<![CDATA[*/ 

$("#answer" + [[${answerStat.index}]]).html([[${answer.value}]]); 

/*]]>*/ 
</script> 

它可以完美的,但answer.value被用戶更早inputed,它可能含有語法錯誤(例如未關閉標籤)。如果answer.value包含語法錯誤,則會導致錯誤。

那麼,我該如何動態檢查answer.value是否有語法錯誤? 謝謝,希望你能幫助我。

+0

很難準確地告訴你需要什麼。用戶是否會輸入原始HTML?怎麼樣的腳本?衛生處理是否重要?什麼是可接受的有效字符? HTML可以通過很多方式編寫,如果沒有一些複雜的正則表達式語句,您將無法評估「有效的html」。 – rob

+0

爲什麼讓用戶輸入HTML? –

+0

因爲我做了一個論壇。 –

回答

1

您可以使用try/catch聲明。

的語法是:

try{ 
    //code to be tried here 
} 
catch(e){ 
    //error handling here 
    //e is the error thrown by the try 
} 

因此,如果您answer.value有錯誤,而且它是一個try/catch聲明裏面,catch語句將運行。詳情請參閱here