有些时候我习惯这样写<input type="text" value="<%=request.getParameter("value")%>">如果这个时候value里包含""的话 显示出来的结果肯定会有错误 如何避免这类情况呢?
昨天用框架的时候突然发觉到了..我当下的解决办法是通过JS赋值 有没有更好的办法呢?

解决方案 »

  1.   

    你这种写法实际上是错误的,但在Tomcat不会报错我这样写
    <input type="text" value='<%=request.getParameter("value")%>'>单引号包含双引号,如果再有引号 就用转义符....包括在JavaScript中同理
      

  2.   

    value赋值的时候用转义符 \"ok\"
      

  3.   

    <input type="text" value=<%=request.getParameter("value")%> />一般不用引号也不会出错,哈哈
      

  4.   

    出现这种问题不光有引号 %> 这些也要主要其实比较简单的办法:
    1、直接用js 赋值 
    或者 
    2、转换成 html 编码
      

  5.   

    曾经实验过转HTML编码 但是转的得到的是 "" 并不是 "" 客户不介意当然没关系 但是客户要是介意呢..
      

  6.   

    如 " 转换为 &quot; 等
      

  7.   


    不是 我不是那个意思 我问的不是这个(我通常没习惯在<%=%>使用双引号 只是个例子而已)
    value="<%=str%>"
    如果str里面有双引号怎么办