[英]Does Java EE not have text fields in scriptlets?
因此,我一直在網上徘徊一段時間以尋找答案。 是否沒有辦法在JSP的Java腳本中包含文本字段? 我知道在C#中您可以擁有
@Html.TextField();
這將創建一個文本字段供您用作C#代碼。
我之所以這么想,是因為我正在抓取一個會話並檢查user屬性是否存儲了用戶名。 如果不是,我不希望它顯示用戶名文本框。 雖然從我可以告訴我的角度來看,我無法使用Java scriptlet做到這一點。
<%if(session.getAttribute("user") == null) %>
Username: <input type="text" name="name"><br/>
有什么我想念的嗎?
這將起作用,但是最好使用JavaServer Pages標准標記庫和表達式語言
而不是腳本。 這會使JSP頁面的維護復雜化。
您可以在JSP頁面上設置范圍變量。 以這種方式:
<c:set var="myVariable" scope="page" value="expression"/>
借助帶有EL的JSTL,可以輕松解決您的情況:
<c:if test="${sessionScope.user eq null}">
<c:out value="Username: ${myVariable}" />
</c:if>
如果您有更復雜的邏輯,那么創建自定義標簽是有意義的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.