我對此很生氣,我需要在grails 2.3.7中顯示一個textarea文本,但是當我替換br /的\ r \ n字符並執行encodeAsHTML( )我得到了br的每一個地方,而不是新的線。在grails中顯示多行文字頁面
它是如何完成的?這是我試過的:
${cotizacionInstance.descripcion.encodeAsHTML().replaceAll('\r\n', '<br/>')}
${cotizacionInstance.descripcion.replaceAll('\r\n', '<br/>').encodeAsHTML()}
<%=cotizacionInstance.descripcion.replaceAll('\r\n', '<br/>').encodeAsHTML()%>
<%=cotizacionInstance.descripcion.encodeAsHTML().replaceAll('\r\n', '<br/>')%>
<%=cotizacionInstance.descripcion.replaceAll('\r\n', '<br/>').decodeHTML()%>
<%=cotizacionInstance.descripcion.decodeHTML().replaceAll('\r\n', '<br/>')%>
我不喜歡它使用pre標籤的方式,因爲我放棄了所有的響應。
我看到在谷歌鉻檢查器中,我得到我的雙引號之間的字符串,但我不知道如何刪除這些。
感謝
更多信息,可以在http://grails.org/doc/latest/guide/security.html#xssPrevention找到。 –
確保您瞭解所有這些工作。如果'cotizacionInstance.descripcion'的值可能包含惡意標記,並且將其標記爲raw,則該值中的任何值都將被非轉義化。根據你的應用程序,也許這是好的,但它是謹慎的事情。 –
這是我需要的感謝!,我將在替換之前使用encodeAsHTML,因此惡意標記不會傷害到我;) –