關於Thymyleaf中下拉菜單幾點需要注意的問題

第一個問題:下拉菜單文字未顯示完整;

先來看源碼:

 <li>
	<p>分類名稱:</p>
	<select name="className" class="form-control m-b" th:with="type=${@dict.getType('sys_zyjn_class')}">
	<option value="" th:selected="true">全部分類</option>
	<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
	</select>
</li>

效果圖如下:

解決方案,把發select下拉菜單中的class樣式去掉即可恢復正常,去掉後的select源碼爲:

 <select name="className"  th:with="type=${@dict.getType('sys_zyjn_class')}">

效果:

 此外,在thymeleaf下拉菜單中有2個問題需要注意:

第二個問題:option中選項如果爲字典值,是不帶“全部分類”的這個值的,那麼就會出現頁面初步加載出來的是字典第一個值的數據,而不是全部數據,如果我們希望頁面初步加載出來的就是全部數據怎麼辦?此時需要我們手動添加一個全部分類的option選項,詳細寫法參照第一段代碼;

第三個問題:關於value,如果value有具體的數值,此時用th:value是沒有問題的,如果像全部分類裏邊是空值:此時用th:value=""就會報錯的了,具體錯誤如下:

怎麼解決呢,就是把th:value=""中的th:去掉,概括如下:

value裏邊是具體的數值,表達式爲 

th:value="${dict.dictValue}"

如果value的值爲空,表達式爲

value=""

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章