Web项目中的登录控件是这样的:
BLL层是这样的:
DAL层是这样的:
Model层是这样的:
问题是我的DAL层返回的内容中,如果没有单引号,就能正常返回,一旦有“‘”单引号的存在,点击登录后就没有反应,只是界面看似刷新一下。
Web项目中的登录控件是这样的:
BLL层是这样的:
DAL层是这样的:
Model层是这样的:
问题是我的DAL层返回的内容中,如果没有单引号,就能正常返回,一旦有“‘”单引号的存在,点击登录后就没有反应,只是界面看似刷新一下。
目测YF.JsHelper.Alert输出js代码,用的alert,然后字符串用的单引号扩起传入的参数值,参数值包含单引号导致js语法出错了
内容改成下面,输出js代码时对单引号转义一次。
return "\\'";
或者修改YF.JsHelper.Alert方法,将传入参数中单引号进行内容转义替换或者直接replace去掉
public void Alert(string s)
{
//s = s.Replace("'", "");//去掉
s = s.Replace("'", "\\'");//不去掉,需要进行转义替换
HttpContext.Current.Response.Write("<script>alert('" + s + "')</" + "script>");
}