JavaWeb----学习(28)----struts2---struts2 的checkbox标签 VS HTML的checkbox标签

1.HTML的checkbox标签

      JSP页面代码:

ddddd:<input type="checkbox" name="ddddd">
<s:submit type="submim"></s:submit>

   浏览器解析代码:

 

  浏览器页面当该复选框被选择时,request请求中向后台发送的参数中,是存在ddddd标签的值true:

浏览器页面当该复选框没有选择时,request请求中向后台发送的参数中,是不包含ddddd标签的:

局限性:在使用普通的HTML标签得CheckBox标签时,复选框会提交一个Boolean值,但是,选中时提交ture,未选中是不会提交任何值

这是普通HTMLCheckBox标签的局限性。就会产生一个问题,如果在javabean中该属性的初始化为ddddd=true;选中提交时ddddd=true

没有选中时,虽然不会提交值,但是由于初始化为ddddd=true,所以可能回产生问题。

2.struts2 的checkbox标签

   JSP代码:

<s:checkbox name="merried" label="Merried"></s:checkbox>
<s:submit type="submim"></s:submit>

   浏览器解析代码:

复选框被选择时                                                  复选框没有选择时

struts2 的checkbox 标签解决了这个局限性, 它采取的办法是为单个复选框元素创建一个配对的不可见字段,被选择时会传递2个参数

(merried=true 和 __checkbox_merried=true),此时struts2 解析得到两个参数,会把后台对应属性值设置为true,没有被选择时

 只会传递一个参数( __checkbox_merried=true)此时struts2 解析得到1个参数会把后台对应属性值设置为fasle

猜你喜欢

转载自blog.csdn.net/lsh15846393847/article/details/87873074
今日推荐