作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何为复选框设置值,true 或 false。
<% Boolean inactive = Boolean.valueOf(request.getParameter("isCheckedUnmatch"));
boolean isChecked = inactive.booleanValue();
%>
<script language = javascript>
function chgFlag(isChecked){
alert(isChecked);
isChecked = true;
}
</script>
<td align = "left">
<input name = "chkUnmatch" type = "checkbox" value = "<%=isChecked%>" onclick = "if (this.checked==true){chgFlag(<%=true%>)}">
<font face = "verdana" size = "2"><b>Unmatch Payment</b></font>
</td>
我已经尝试过这段代码,即使我选中了该框,来自 java Controller 的 boolean 值仍然是 false,它的默认值。
注意:我使用的是 Java 1.3,这是开发应用程序时 Java 的最新版本。
最佳答案
首先,在 JSP java 代码和 Scriptlet 中( <% %>
、 <%! %>
、 <%= %>
),表达式 ${}
等等...所有内容都在处理 HTML、javascript 和 css 之前进行处理。
even if I checked the box, the value of the boolean from the java controller is still false, its default value.
如果您想在选中/取消选中复选框时更改服务器端变量值(即 Controller 、模型、Servlet 等),有一些方法:
1) 使用 AJAX 向服务器发送变量值更改请求:
HTML 页面如下:
<form id="myForm" action="servletUrlPattern" method="post">
<input name="chkUnmatch"
type="checkbox"
onclick="if (this.checked==true){chgFlag(true)}">Check Box
<input type="submit"/>
</form>
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
function chgFlag(isChecked){
console.log('isChecked: '+isChecked);
$.post( $('#myForm').attr('action'), { valueToChange : isChecked }).done(function( data ) {
alert( "Data Loaded: " + data );
});
}
</script>
在 Servlet 中:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doPost() invoked..");
Boolean valueToChange = Boolean.valueOf(request.getParameter("valueToChange"));
System.out.println("valueToChange:"+valueToChange);
//Here, Do your works..
response.getWriter().write("successfully changed.");
}
2)
使用带有提交按钮的表单。
<小时/>也可以看看: jquery post doc关于java - 为复选框分配一个值(true 或 false),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22754623/
我是一名优秀的程序员,十分优秀!