使用jbox做列表选择

需求:用户填写表单的时候有个字段需要从列表中选择

效果图:

使用jbox做列表选择_第1张图片

我的做法是将一个jsp放到jbox里面,然后在点击放大镜按钮的时候触发一下,用dom相关知识返回所取到的值。

具体方法如下:

首先,需要做一个列表


		
选择 手机号 缴费金额
律林帮公用模板 --
${porUser.mobile} ${porUser.money}

第一列放置类似“所有”,然后自己赋值就可以了,然后在每一行第一个td标签里面放一个“radio”,这个地方有一点需要注意,每个radio的name是一样的,所以每次选择的时候都只会勾选上一个,这就是为什么需要在最上方需要加上一条“所有”的原因。

接下来写触发的控件

*

然后将列表放入到jbox里面


当userButton被点击的时候会触发$("#userButton").click()然后就会调用jbox,然后根据地址去寻找刚刚做的那个列表jsp。接下来就剩下取值的问题了。我先把其中的一个值取出来,通过尝试后发现可以用document.getElementById("jbox的id").contentWindow.document.getELementById('控件id').value来获取

		var submit = function (v, h, f) {
			var v=document.getElementById('jbox-iframe').contentWindow.document.getElementById('svalue').value;
			document.getElementById("porUid").value=v.split(",")[0];
			document.getElementById("porUName").value=v.split(",")[1];
		    return true;
		};

接下来就是做循环判断取出被选中的那个值了。

由于列表中勾选的是radio,所以需要将getElementsById改成getElementsByName,然后循环去取出来。

var submit = function (v, h, f) {
	var temp = document.getElementById('jbox-iframe').contentWindow.document.getElementsByName('svalue');
	for(var i=0;i

效果图:

 

你可能感兴趣的:(jQuery)