頁面 A:Radio 默認選中「男」
表單提交到頁面 B:同樣有 Radio 組,需根據提交值默認選中對應項
<form action="pageB.jsp" method="post">
<input type="radio" name="sex" value="man" checked/> 男
<input type="radio" name="sex" value="woman"/> 女
<input type="submit" value="提交"/>
</form>
<%@ page contentType="text/html;charset=UTF-8" %>
<form>
<input type="radio" name="sex" value="man"
${param.sex == 'man' ? 'checked' : ''} /> 男
<input type="radio" name="sex" value="woman"
${param.sex == 'woman' ? 'checked' : ''} /> 女
</form>
${param.sex}:JSP 內置 param 對象自動綁定請求參數 name="sex" 的值checked 屬性:HTML5 中 checked 無需值,存在即為真pageB.jsp?sex=man,邏輯完全相同/WEB-INF/tags/radio.tag<%@ tag body-content="empty" %>
<%@ attribute name="name" required="true" %>
<%@ attribute name="value" required="true" %>
<%@ attribute name="label" required="true" %>
<%@ attribute name="selectedValue" required="false" default="" %>
<input type="radio" name="${name}" value="${value}"
${selectedValue == value ? 'checked' : ''} /> ${label}
<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>
<t:radio name="sex" value="man" label="男" selectedValue="${param.sex}"/>
<t:radio name="sex" value="woman" label="女" selectedValue="${param.sex}"/>
若頁面 B 為純靜態 HTML,可用 JavaScript 解析 URL 參數回顯:
<script>
const params = new URLSearchParams(location.search);
const sex = params.get('sex');
if (sex) document.querySelector(`input[name="sex"][value="${sex}"]`).checked = true;
</script>
method 與接收端一致(POST 用 request.getParameter/param,GET 用 param 同樣可用)name 必須完全一致,否則瀏覽器視為不同組fn:escapeXml() 或 JSTL c:out