当前位置: 代码迷 >> Web前端 >> 经过jquery动态关联checkbox的选择
  详细解决方案

经过jquery动态关联checkbox的选择

热度:250   发布时间:2012-11-22 00:16:41.0
通过jquery动态关联checkbox的选择

?

继续昨天的工作,今天要把昨天插入的form数据,进行更新操作,而checkbox里面的选项同用户相关联,所以,可以在添加页面中进行更新的操作。具体当用户选择添加后,在选择用户后,就可以将该用户已有的选项,在相应的checkbox中进行选择。这样就没有做新更新页面,直接在昨天新增页面进行了更新操作的开发。

?

具体代码,如下:

function selPerson(){

//获得所选用的信息
??var arr=showModalDialog("popDialog.act?execute=sysUsersSelect", window, "dialogWidth:600px; dialogHeight:400px;");
??if(arr!=null){
???document.all.entrustedcode.value=arr[0];
???document.all.entrustedname.value=arr[1];
??}

//使用jquery获得选中用户的checkbox的值,它对应着子checkbox,name是nodeid,可根据数据库中查找后的结果,通过value属性进行关联。
??var $=daqix.thirdparty.jquery.JQuery;??????? ?
?? $.ajax({??
??????????? type:'GET',??

??????????? //获取结果,即checkbox name为nodeid的多有选项的value,通过“,”分割????
??????????? url:'<%=request.getContextPath() %>/webapp/main/entrustUpdate.act?entrustedcode='+arr[0],??????
??????????? async:false,
??????????? success:function(date){??

??????????????? //当选择的用户改变时,将checkbox清空

??????????????? $('input[type="checkbox"][name="nodeid"]').attr("checked", false);??

????????????????//当返回值不为空时,选择相应checkbox
??????????????? if(date!=""){
???????????????? var list = date.split(",");
???????????????? for(num in list){??

??????????????????//选择相应checkbox???
??????????????????$("input[value="+list[num]+"]").attr("checked",true);?
???????????????? ?}
???????????????? }
???},?????????????????
??????????? error:function(req){
??????????? alert("自动获得信息出错,请手动输入下面的内容。");??????????????
??????????? }?????????????
??????? });????????
?}?

selPerson()函数中后面的jquery相关的代码,是直接加在了选择用户的函数中,其实应该新建一个函数的,偷懒了。

?

?

?

?

  相关解决方案