標籤:io 使用 ar div sp 問題 cti on c
struts2中的標籤 s:a 中的href 什麼時候使用“# ” 什麼時候該用“%{ }” 什麼時候該用“%{# }” 什麼時候用“” s:select 中的list 什麼時候使用“# ” 什麼時候該用“%{ }” 什麼時候該用“%{# }” 什麼時候用“” s:if 中的test 什麼時候使用“# ” 什麼時候該用“%{ }” 什麼時候該用“%{# }” 什麼時候用“” s:iterator 中的value什麼時候使用“# ” 什麼時候該用“%{ }” 什麼時候該用“%{# }” 什麼時候用“” s:checkboxlist 中的list 什麼時候使用“# ” 什麼時候該用“%{ }” 什麼時候該用“%{# }” 什麼時候用“” Struts2中有值堆棧和堆棧內容相關的概念,你用 <s:debug />可以看出. S標籤中用#可以取出堆棧上下文中的存放的對象. 用%{}可以取出存在值堆棧中的Action對象,直接調用它的方法.例如你的Action如果繼承了ActionSupport .那麼在頁面標籤中,用%{getText(‘key‘)}的方式可以拿出國際化資訊. %{#}, 這是JSP2.1最新規範中的文法,是Struts2為其解決相容性問題而寫成%{#}的 在域對象中使用%{#} 比如%{#session.user.userName} 將獲得user對象的 userName屬性值 %{}強調的是從你設定的root點取 %{}用於計算運算式 如%{10+20}結果將輸出30 如%{"a"+"b"}結果將輸出"ab" #通常強調從上下文取 如#parameters.name[0]等價於request.getParameter("name") 如#session.name等價於session.getAttribute("name") 如#request.name等價於request.getAttribute("name") %{#}仍然用於計算運算式,只不過操作元可以是變數 如先定義一個變數 <s:set name="age" value="%{25}"/> 則%{#age}將輸出25,也可以省略"#",寫為%{age} 若將age加10,可這麼寫: %{#age+10},將輸出30.不能省略"#"。也就說變數用於計算時不能省略"#"
Struts2標籤 %{ } %{# }詳解