将 jstl foreach 变量传递给 javascript 函数
pass jstl foreach variable to javascript function
我使用 jstl foreach 循环来显示我的 data.User 可以更改值,最后我想通过 jquery 将这些数据发送到服务器。
我的问题是当用户更改数据并单击 'ok' 按钮时,如何将循环变量传递给我的 jquery 函数。
我用了
<c:set var="chequeInfo" value="${cheque.chequeNo}~${cheque.amount}~${cheque.chequeDate}"/>
将 chequeInfo
传递给 registerEdit()
函数。但是当用户编辑我的数据时这个变量的值没有改变
<c:forEach items="${chequeList}" var="cheque">
<div class="row">
<input class="date" type="text"
value="${cheque.chequeDate}">
<select id="chequeStatus">
<c:forEach items="${chequeStatus}" var="status">
<option value="${status.id}">${status.farsiName}</option>
</c:forEach>
</select>
<label class="col-lg-3">${cheque.chequeNo} </label>
<input type="text" value="${cheque.amount}">
<button class="col-lg-offset-1 col-lg-1 btn btn-default register-edit"
onclick="registerEdit('${cheque}','${status.id}')">ok
</button>
</div>
</c:forEach>
如何将 ${cheque}
和 ${status.id}
发送到 registerEdit()
函数。谢谢
您可以为每个标签添加 varStatus 属性,为您的输入创建唯一 ID,并将索引值传递给您的 registerEdit。
<c:forEach items="${chequeList}" var="cheque" varStatus="loop">
<div class="row">
<input id="chequeDate-${loop.index}" class="date" type="text"
value="${cheque.chequeDate}">
<select id="chequeStatus-${loop.index}">
<c:forEach items="${chequeStatus}" var="status">
<option value="${status.id}">${status.farsiName}</option>
</c:forEach>
</select>
<label class="col-lg-3">${cheque.chequeNo} </label>
<input id="amount-${loop.index}" type="text" value="${cheque.amount}">
<button class="col-lg-offset-1 col-lg-1 btn btn-default register-edit"
onclick="registerEdit('${loop.index}')">ok
</button>
</div>
</c:forEach>
在你的js函数中
function registerEdit(index){
//get chequeStatus value like this
var chequeStatus = $("#chequeStatus-"+index).val()
//do same thing for other values
}
我使用 jstl foreach 循环来显示我的 data.User 可以更改值,最后我想通过 jquery 将这些数据发送到服务器。
我的问题是当用户更改数据并单击 'ok' 按钮时,如何将循环变量传递给我的 jquery 函数。
我用了
<c:set var="chequeInfo" value="${cheque.chequeNo}~${cheque.amount}~${cheque.chequeDate}"/>
将 chequeInfo
传递给 registerEdit()
函数。但是当用户编辑我的数据时这个变量的值没有改变
<c:forEach items="${chequeList}" var="cheque">
<div class="row">
<input class="date" type="text"
value="${cheque.chequeDate}">
<select id="chequeStatus">
<c:forEach items="${chequeStatus}" var="status">
<option value="${status.id}">${status.farsiName}</option>
</c:forEach>
</select>
<label class="col-lg-3">${cheque.chequeNo} </label>
<input type="text" value="${cheque.amount}">
<button class="col-lg-offset-1 col-lg-1 btn btn-default register-edit"
onclick="registerEdit('${cheque}','${status.id}')">ok
</button>
</div>
</c:forEach>
如何将 ${cheque}
和 ${status.id}
发送到 registerEdit()
函数。谢谢
您可以为每个标签添加 varStatus 属性,为您的输入创建唯一 ID,并将索引值传递给您的 registerEdit。
<c:forEach items="${chequeList}" var="cheque" varStatus="loop">
<div class="row">
<input id="chequeDate-${loop.index}" class="date" type="text"
value="${cheque.chequeDate}">
<select id="chequeStatus-${loop.index}">
<c:forEach items="${chequeStatus}" var="status">
<option value="${status.id}">${status.farsiName}</option>
</c:forEach>
</select>
<label class="col-lg-3">${cheque.chequeNo} </label>
<input id="amount-${loop.index}" type="text" value="${cheque.amount}">
<button class="col-lg-offset-1 col-lg-1 btn btn-default register-edit"
onclick="registerEdit('${loop.index}')">ok
</button>
</div>
</c:forEach>
在你的js函数中
function registerEdit(index){
//get chequeStatus value like this
var chequeStatus = $("#chequeStatus-"+index).val()
//do same thing for other values
}