日期:2009-08-11  浏览次数:21270 次

关于输入框中显示双引号和单引号

前台显示解决办法:
方法一:
单引号<input type="text" value="'">
双引号<input type="text" value='"'>
方法二:
单引号<input type="text" value="&#39;">
双引号<input type="text" value="&#34;">


从后台读取数据前台显示解决办法:
我们从数据库中读取值到前台显示时应该加入转换

javascript版本:

<% @Language="javascript" %>
<%
function ForamtValue(oStr)
{
switch(typeof(oStr))
{
case "date" :
//直接toString()转换,可以加入丰富的显示方式
sStr = (new Date(oStr)).toString();
break;
default :
sStr = String(oStr);
}
sStr = sStr.replace(/\"/g,"&#34;"); //输入框中显示双引号问题
sStr = sStr.replace(/\'/g,"&#39;"); //输入框中显示单引号问题
return sStr;
}
%>

<%
//测试
var str = "\"灰豆宝宝.net(魔幻季节)\"";
var str = new Date();
%>
<br>
<input type="text" value="<%=str%>" style="width:200px">[不能正常显示]<br>
<input type="text" value="<%=ForamtValue(str)%>" style="width:200px">[正常显示]<br>


VBScript版本:

<% @Language="VBScript" %>
<%
function ForamtValue(oStr)
Select Case VarType(oStr)
Case "vbDate"
'直接toString()转换,可以加入丰富的显示方式
sStr = CDate(oStr)
Case Else
sStr = CStr(oStr)
End Select
sStr = Replace(sStr,"""","&#34;") '输入框中显示双引号问题
sStr = Replace(sStr,"'","&#39;") '输入框中显示单引号问题
ForamtValue = sStr
End Function
%>

<%
'测试
Dim str
str = """'灰豆宝宝.net(魔幻季节)'"""
%>
<br>
<input type="text" value="<%=str%>" style="width:200px">[不能正常显示]<br>
<input type="text" value="<%=ForamtValue(str)%>" style="width:200px">[正常显示]<br>