<input type="text" class="originalValues" id="orig_<%=ColumnName%>" value="<%=FldValue%>">
对不起,这是我第一次找不到我要找的东西,实际上不得不问一个问题。
我有一个隐藏的输入,但如果值包含引号(“),则vbscript会删除其余的隐藏输入值。
如何逃避或替换报价?将这些原始值与textareas进行比较,以查看是否已进行更改并添加到审核日志中。
答案 0 :(得分:2)
在HTML中,转义双引号的正确方法是使用"
字符实体。如果您始终使用双引号括起HTML属性值,则可以使用内置ASP方法Server.HTMLEncode
来安全地编码引号和需要转换的其他字符。
Response.Write Server.HTMLEncode(Chr(34) & "surrounded by quotes" & Chr(34))
输出
"surrounded by quotes"
实际上,更安全的方法是替换单引号(撇号),因为它们也可用于分隔属性值。这可以通过在Server.HTMLEncode
周围编写一个简单的包装器并将其包含在函数库中来完成。
Function HTMLEncode(s)
HTMLEncode = Replace(Server.HTMLEncode(s), "'", "'")
End Function