我想将一个 javascript 变量传递给我的 servlet,我需要在其中使用它。
在 javascript 中,变量 count 返回我的表的行,我可以使用 $('#counter') 在 jsp 中显示 count。 html(count);
,但我无法将 count 的值传递给我的 servlet。我尝试了 document.getElementById("hiddenField").value=count;
但它不起作用。
Javascript
<script>
var count = 3;
$(function() {
$('#counter').html(count);
$('#addButton').bind('click', function() {
count = document.getElementById("dataTable").getElementsByTagName("tr").length;
$('#counter').html(count);
});
$('#deleteButton').bind('click', function() {
count = document.getElementById("dataTable").getElementsByTagName("tr").length;
$('#counter').html(count);
});
});
document.getElementById("hiddenField").value=count; // ???
</script>
JSP
Count: <span id="counter"></span> <%-- it works --%>
<form method="post" action="newteamsubmit">
...
<input type="hidden" id="hiddenField" name ="countRows" />
<input type="submit" name ="button1" value=" Submit " />
<input type="submit" name = "button1" value=" Cancel " />
</form>
小服务程序
String cr = request.getParameter("countRows"); //I' ve tried also to convert it
// to int, but that's not my problem, since I cannot pass the value as a start
我花了很多时间试图找出如何在 jsp 中访问 javascript 变量,但我还没有找到任何解决方案。 提前致谢。
最佳答案
每次单击添加按钮或删除按钮时都会计算计数
。但是当页面加载时,您只设置一次隐藏字段值(因此它的值被硬编码为 3)。
您必须在点击处理程序中设置它,就像您对 #counter
元素所做的那样:
$('#addButton').bind('click', function() {
count = document.getElementById("dataTable").getElementsByTagName("tr").length;
$('#counter').html(count);
$('#hiddenField').val(count);
});
$('#deleteButton').bind('click', function() {
count = document.getElementById("dataTable").getElementsByTagName("tr").length;
$('#counter').html(count);
$('#hiddenField').val(count);
});
另请注意,您在这里的两个点击处理程序中重复了完全相同的代码。对于两个按钮,您应该只执行一次:
$('#addButton, #deleteButton').bind('click', function() {
count = document.getElementById("dataTable").getElementsByTagName("tr").length;
$('#counter').html(count);
$('#hiddenField').val(count);
});
甚至,因为您使用的是 jQuery:
$('#addButton, #deleteButton').bind('click', function() {
count = $("#dataTable tr").length;
$('#counter').html(count);
$('#hiddenField').val(count);
});
关于java - 在jsp中访问javascript变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20747647/