如何将 foreach 按钮单个值传递给 javascript?

How could I pass foreach button single value to javascript?

我的 Javascript 和 Jsp 代码:

var questionNum = $('#questionNum').val();
<c:forEach var="i" begin="1" end="${examPaper.number_of_questions}">
 <input type="button" name="question_num" id="questionNum" value="<c:out    value="${i}"/>" onclick="doAjaxPost(this.id);" class="startTest"/>
</c:forEach>

但在 java 脚本中,我得到的值为 0。任何人都可以帮助我获得该值。

尝试使用基于 XML 的 fn 函数。

<input type="button" name="question_num" id="questionNum" value="${fn:escapeXml(i)}" onclick="doAjaxPost(this.id);" class="startTest"/>

记住你需要导入函数 jstl 你可以用

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

<div xmlns:fn="http://java.sun.com/jsp/jstl/functions">
   ... Your code...
</div>

希望对您有所帮助,问候。

Javascript代码:

$(document).ready(function(){
   $(":input").click(function(){
   var questionNum = $(this).val();
   alert(questionNum);
   });
});

HTML,JSTL 代码到您的 jsp 页面

   <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

    <c:forEach var="i" begin="1" end="${examPaper.number_of_questions}">
        <input type="button" id="questionNum${fn:escapeXml(i)}" value="${fn:escapeXml(i)}" onclick="doAjaxPost(this.id);" class="startTest"/>
    </c:forEach>