我一直在使用HTML在Thymeleaf中分配我的ID(数据来自PostgreSQL,Eclipse上的框架SpringBoot。PHP和JQuery不包括在教学大纲中)。
我想检查用户是否没有选择任何单选按钮,并想在Javascript上尝试。
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" name="viewport"
content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0" />
<!-- CSSの読み込み -->
<link type="text/css" rel="stylesheet" href="./css/examMain.css">
<title>模擬試験オンラインー英単語試験</title>
</head>
<body>
<form method="post" action="/result" data-th-object="${form}">
<!-- ヘッダータイトル -->
<div class="headerbackground">
<h6>模擬試験オンライン</h6>
</div>
<br>
<!-- 試験指示 -->
<div class="examinstruction">
<p>表示された言葉の英単語を以下から1つを選び、</p>
<p>OKボタンをクリックしてください。</p>
</div>
<br>
<!-- 質問 -->
<div data-th-each="list, st : ${form.list}">
<p style="text-align: center; font-size: 12px;">
<span data-th-text="${list.questionCount}">n</span> <span>/</span> <span
data-th-text="${list.questionTotal}">/n</span>
</p>
<div class="questionborder">
<p style="font-size: 22px; font-weight: bold"
data-th-text="${list.content}">question</p>
</div>
<!-- 解答選択肢 -->
<fieldset style="border: 0">
<div class="choiceradiobox"
data-th-each="choice, stat : ${list.choice}">
<input data-th-id="|choice_id${st.index}${stat.index}|"
data-th-name="|choice${st.count}|" type="radio"
data-th-value="${choice}"
data-th-field="*{list[__${st.index}__].choiceAnswer}" /> <br>
<label data-th-for="|choice_id${st.index}${stat.index}|"
data-th-text="${choice}"></label>
</div>
</fieldset>
</div>
<!-- 解答完了ボタン -->
<div class="submitsection">
<input class="btn btn-secondary" style="font-size: 25px"
type="submit" value="OK!">
</div>
</form>
</body>
</html>
一直卡在ID部分-有什么办法改变这一位
data-th-id="|choice_id${st.index}${stat.index}|"
以document.getElementById开头的代码,就像这样吗?
var choiceselect = document.getElementById("|choice_id${st.index}${stat.index}|".checked);
我阅读了Thymeleaf的官方文档,但仍然无法理解Js部分:((上面的代码创建了一个错误,显示java.lang.IndexOutOfBoundsException:索引1超出长度1的界限)
提前感谢您!
1条答案
按热度按时间368yc8dk1#
我想我明白了-对于单选按钮,最好使用名称,而不是id。就像这样: