错误记录:html隐藏域的值存字符串时出错

时间:2022-09-29 17:10:59

问题  

webform在后台给前台传值。  <input type="hidden" value="<%=userType %>" id="userType"> 到了前台却显示<input type="hidden" value=""学生 id="userType">。 这时js无法取到隐藏域的值了。 后来通过调试发现 userType 的值为  "\"学生\""  , 说明值中就带有双引号,到了页面value="" "学生" 就自动把前两个""作为值,后面的引号直接忽略了。 发现如果value='userType' 用单引号,如果变量中存在双引号则可以正常显示。

最后再追踪起因:

请求页面时地址字符串加了双引号: ../teacher/upLoadImg.aspx?userType="学生" 因为请求地址本身是一个字符串,再加双引号。 到了服务端userType 的值就变成了 "学生" 再显示到页面的时候  ,value就不正常了。