我正在使用MVC并且我已经创建了一个HtmlHelper扩展函数ImageLink。此函数使用两个TagBuilder对象来构建HTML图像链接(如<a><img/></a>
)。
它工作正常,但现在我有一个页面,首先应确认图像按钮的操作。所以,我添加了一个onclick属性“javascript:return confirm('确认我');”作为onclick代码。
这呈现为:onclick =“javascript:return confirm('confirm me');”
我虽然这不起作用,但确实如此。但现在我们进入:
“javascript:return confirm('确认我\ r \ nnewline');”
这将呈现为:
onclick =“javascript:返回确认('确认我 换行');“
哪个不起作用。
我更希望TagBuilder不要编码任何东西,让我来处理它。但既然如此,我现在正在寻找一种方法来使其正常工作。
答案 0 :(得分:2)
反斜杠(\)是C#字符串中的一个特殊字符,因此您只需要像在通常情况下那样在任何其他情况下进行转义,当您希望它出现在最终字符串中时。
tag.MergeAttribute("onclick", "return confirm('first line\\n\\nsecond line');");