有我的javascript和html代码。我想将数据从javascript函数检索到servlet。我尝试下面的代码但我不知道它是否真实。而且我想将数据html获取到servlet。有什么不对 ?因为它不起作用?
这是我的jsp代码:
<html>
<head>
<script>
function myFunction() {
var r = confirm("Are you sure about that ?");
if (r == true) {
return 1;
} else {
return 2;
}
}
document.getElementById('onay').value = myFunction();
</script>
</head>
<body onload="javascript: myFunction()">
<input type="hidden" id="onay" name="onay" />
</body>
</html>
我尝试从jsp获取数据到servlet:
编辑:
int onay= Integer.parseInt(request.getParameter("onay"));
这段代码返回java.lang.NumberFormatException:null,因为我认为我无法将数据检索到servlet?
答案 0 :(得分:3)
在正文中创建表单标记
<html>
<head>
<script>
function myFunction() {
var r = confirm("Are you sure about that ?");
if (r == true) {
return 1;
} else {
return 2;
}
}
document.getElementById('onay').value = myFunction();
</script>
</head>
<body onload="javascript: myFunction()">
<form name"frm1" id="frm1" action="servletname">
<input type="hidden" id="onay" name="onay" />
<input type="submit"/>
</form>
</body>
</html>
然后在你的servlet中
request.getParameter("onay")
没有提交按钮,您可以使用
document.getElementById("frm1").submit();
或
document.frm1.action="servletname";
document.frm1.submit();
答案 1 :(得分:0)
<html>
<head>
<script>
function myFunction() {
var r = confirm("Are you sure about that ?");
if (r == true) {
return 1;
} else {
return 2;
}
}
document.getElementById('onay').value = myFunction();
</script>
</head>
<body onload="javascript: myFunction()">
<form action="servletname" method = "POST">
<input type="hidden" id="onay" name="onay" />
//wrote a code for submit button.
</form>
</body>
</html>
答案 2 :(得分:0)
没有意义,但是,
尝试
<input type="hidden" id="onay" name="onay" value="myFunction()"/>
而不是
<input type="hidden" id="onay" name="onay" />