现在的位置: 首页 > 综合 > 正文

asp.net绑定checkboxlist——–jquery绑定click事件,获取checkbox的value和显示值

2013年09月07日 ⁄ 综合 ⁄ 共 1245字 ⁄ 字号 评论关闭

 

asp.net的checkboxlist后台绑定DataTextField和DataValueField

前台页面发现情况有:

(1)checkbox是单独的,里面什么信息都没有,在其紧接有一个label,包含text值。

<input
id
="dlWater_0" type="checkbox"
name="dlWater$0" />
<label
for="dlWater_0">
PH</label>

(2)没有找到value值


从后台获取value和text值是没有问题的,但是考虑到前台的获取,比如:选中checkbox,显示选中的值,取消选中时,把显示的值从选中的列表中去掉,同时还要选中时要保存value值(通常是用hidden隐藏的),取消选中时去掉value和text值,

这样就要考虑从前台获取text和value值了。

js的还没有考虑过,jquery的倒是试过

(1)jquery获取text值:

从情况1中jquery这样实现

             $("input[type='checkbox']").click(function(){

               var jcxmname=$(this).next().text();//获取label的值

                          }

(2)jquery获取value值:

      从情况2可以看到,从后来绑定后value没有显示到前台(搞不清楚),前台的页面上没有value值,jquery是不能获取的,所以需要把绑定value值给显示出来,找了一下发现可以用其他的方法把value值显示到前台

        foreach (ListItem item in CheckBoxList1.Items)

        {

            item.Attributes.Add("val", item.Value);

        }

     在绑定值过后就把value值同时再绑定下,这样绑定后前台就显示出value值了(后来发现刷新页面value值是会丢失的,怎么办,你懂的!)

      前台代码如下:

                   <span
val
="1001">
<input
id="dlWater_0"
type
="checkbox" name="dlWater$0" />
<label
for="dlWater_0">
PH</label></span>

        发现最外面多个span,并且把value值以val的形式给显示出来了,这样就好办多了。

        又查过资料发现jquery可以这样取值

                       $("input[type='checkbox']").click(function(){

           var lvalue=$(this).parent('span').attr("val");//获取value值

           var lname=$(this).next().text();//获取text值

                        }

          这样就能够在前台获取到value值了。

【上篇】
【下篇】

抱歉!评论已关闭.