zoukankan      html  css  js  c++  java
  • 【JSP】jQuery Deferred exception successed is not defined

    • 我用<%=%>输出在<%%>内定义的变量apply,<%=apply%>的值为failed,然后黄色警告JQuery.Deferred exception: successedis not defined ReferenceError: failed is not define at HTMLDocument.<anonymous>(http://localhost:8080/applyTutorServlet?stuID=20171532:86:30)

    • 代码:

      <%
      String apply=(String) request.getAttribute("applyStatus");
      System.out.println("JSPapply="+apply);
      %>
      var applyStatus =<%=apply%>;
      
      if (<%=apply%> == "failed"){} //这句报错
      

      控制台输出JSPapply=failed没问题,浏览器控制台输出<%=apply%>

      是null,输出其类型是undefined

      点击错误行86

      看着没问题,但实际上这里由于var变量没有类型,赋值必须要加引号,表示这是个字符串。

      加上引号即可

      var applyStatus =<%="""+apply+"""%>;
      


    • 小结:我以为,在<%%>内定义的apply是String类型的,输出直接就是字符串,但实际却不是。

      以后用<%=%>输出在<%%>内定义的变量时,一定要注意类型,如果是字符串要先加引号。

  • 相关阅读:
    css(一)
    Html table
    Html
    jQuery事件和效果
    jQuery基础
    ajax和http状态码
    点击数组选中某一项,存入数组,再次点击删除
    单行两行,多余显示省略号
    git的使用
    产生滚动效果
  • 原文地址:https://www.cnblogs.com/musecho/p/13152525.html
Copyright © 2011-2022 走看看