EL表達式${}里外要不要加雙引號問題?


如題:

因為${u}包含兩句語句:

  • pageContext.findAttribute("u");即從作用域中通過key取出value值
    •   當${u}語句中的u不帶引號時,當成key取值時是會加“”的。所以${}里面只要是作用域里的key值就不用加引號。(參照19期el文檔的獲取數據部分)
  • 輸出value
    • 而當${}里面是字符串時,就只相當於java的out語句。
      •   ${"3"}---輸出3
      •   ${"3+5"}--輸出3+5
      •   ${"3"+"5"}--輸出8

注:當需要在${}輸出后還是各字符串的時候,需要給${}外加雙引號。

如:msg的值為"此處為字符串"。

       利用jsp頁面中var massage = ${msg};獲取后massage=此處為字符串-----顯然是不對的

       必須var massage = "${msg}"---------才是對的

注:服務器給瀏覽器發送的是el表達式取值后的結果,也就是說el表達式是在服務器端完成的解析。

  如果el表達式的取值是字符串的話,就應該加雙引號。

  如果是數字類型,則不需要加。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM