我想要生成一個html選擇元素預選一個選項。我無法想象用stringtemplate來做這件事的方法。stringtemplate:問題生成HTML選擇與預選
如果user.choice設置爲「B」,那麼我想打印一個html選擇元素,並且預先選擇了B選項。
user.choice = "B";
StringTemplate myPage = group.getInstanceOf(....);
myPage.setAttribute("user", user);
上打印的模板應產生:
<select>
<option value="A" >A Selected</option>
<option value="B" SELECTED >B Selected</option>
<option value="C" >C Selected</option>
<option value="D" >D Selected</option>
</select>
誰能告訴我怎麼寫模板這樣做。選項(A,B ...)的數量是固定的(在編寫模板時已知)。
這是爲網站生成html頁面時相當常見的需求。但是對於傳遞值的比較操作似乎沒有什麼可以在stringtemplate中使用。我錯過了明顯的東西嗎?
我正在使用stringtemplate組(.stg)文件,因此具有引用其他模板的模板的解決方案都很好。在java中使用stringtemplate 3.2.1。使用「$」分隔符而不是現在默認的「<>」來簡化html生成。
這裏有一個相關的問題:http://stackoverflow.com/questions/4195828/stringtemplate-compare-strings-does-not-work – 2011-03-26 06:15:15
@伊恩 - 羅伯遜我欣賞嚴格的分離是stringtemplate的更好的部分。這個用例看起來很普遍,所以我認爲可能有一個確定的技術/模式,似乎沒有。 – sundoe 2011-03-26 15:32:55
我相信這是一個確定的模式,並且在將模板與模板混搭之前,它已經獲得了您喜歡的模型。也許你正在尋找規則的既定例外情況? :) – 2011-03-26 15:37:02