jQuery教程

Struts2的s:radio标签使用及用jquery添加change事件

本文主要是介绍Struts2的s:radio标签使用及用jquery添加change事件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
struts2中s:radio标签的使用总结

遇到的问题:在使用该标签时,设置了默认选中项,但提交数据返回后,单选框不能显示之前选中的项,仍然为默认选项
通过测试得出以下结论:

以<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" theme="simple"></s:radio>为例
在使用s:radio标签的时候,如果要使该标签默认选中一项,可以通过两种方法
1、通过js代码实现
复制代码 代码如下:

document.getElementsByName('user.sex')[0].checked=true;//默认选中男

2、通过添加value属性
复制代码 代码如下:

<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" value="1" theme="simple"></s:radio>

在通过value属性设置单选框的默认选项时,无论何时页面刷新后单选框的状态都是选中该默认项
因此,如果要让数据提交后台后,该单选框仍然是之前选中的项,不能通过value属性设置它的默认项,应该通过第一种方法设置
此外,后台能够正确获取该单选框的值,而与value的设置无关

用jquery给Struts2的<s:radio />标签添加change事件

用到Struts2的<s:radio/>标签时想给它添加一个change事件,由于此标签为页面自动生成一个radio组,不能像平常那样控制。网上说了一大堆,也没找到一个满意的。如果像以前那样给此<s:radio />设定一个id,那样生成的radio组中会自动添加一个数字,如:
复制代码 代码如下:

<input type="radio" name="file" id="upfile_file0" value="0"><label for="upfile_file0">否</label>
<input type="radio" name="file" id="upfile_file1" checked="checked" value="1" class="filetype"><label for="upfile_file1">是</label>

这时可以借助jquery来实现,很简单,给此<s:radio/>添加一个属性cssClass="filetype",就会给每个radio添加一个css类,上面可以看得出来,那么接下来代码如下所示:
复制代码 代码如下:

$(function(){
$(".filetype").change(function(){
var val = $("input[name='file']:checked").val();//获得选中的radio的值
if(val=='1'){
alert(“是”);
}else{
alert(“否”);
}
});
});
这篇关于Struts2的s:radio标签使用及用jquery添加change事件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!