鍍金池/ 問答/C#  網(wǎng)絡(luò)安全  HTML/ razor 在onclick里需要輸出帶有換行的字符串怎么辦?

razor 在onclick里需要輸出帶有換行的字符串怎么辦?

現(xiàn)有代碼想實(shí)現(xiàn)頁面內(nèi)編輯功能,其中編輯按鈕要填充彈出對話框的textarea,發(fā)現(xiàn)數(shù)據(jù)有回車換行時(shí)無法正常顯示:
onclick="editItem('@item.jd_no','@item.p_day')"
這里p_day可能有換行,導(dǎo)致onclick沒正常結(jié)束.
這里恐怕?lián)Q成Raw輸出也不行吧?該怎么整?

回答
編輯回答
薄荷糖

使用 System.Web.HttpUtility.JavaScriptStringEncode() 方法

@using System.Web;

@HttpUtility.JavaScriptStringEncode(item.p_day);
2018年2月8日 22:33
編輯回答
懷中人

可以試一下把 @item.p_day 中的換行符替換掉,比如:

onclick="editItem('@item.jd_no','@(item.p_day).Replace("\r\n").Replace("\n","")')"
2017年11月19日 16:17