欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery獲取checkboxlist的value值的方法

 更新時間:2015年09月27日 14:48:07   作者:細數(shù)細水長流  
最近著手一個項目用到了服務(wù)器空間checkboxlist ,使用起來是方便,可以想要從js獲取值就稍微麻煩點了,google后找到了如下方法,感興趣的小伙伴們可以參考一下

CheckboxList是服務(wù)器控件,綁定數(shù)據(jù)容易,服務(wù)器端獲取選中值也容易。但是生成的靜態(tài)頁面居然沒有ListItem的Value值,所以默認情況下用js在頁面中是取不到ListItem的值的。至于為什么不顯示value值,我也不清楚,本篇給出一個用jQuery獲取checkboxlist值的方法。

先看看原始的頁面html代碼:

<asp:CheckBoxList runat="server" ID="listTest">
</asp:CheckBoxList>
<input type="button" id="btnShow" value="顯示選中值" />

下面我們綁定checkboxlist,代碼如下:

if (dt != null && dt.Rows.Count > 0)
{
  foreach (DataRow dr in dt.Rows)
  {
    //分別為text值、value值
    listTest.Items.Add(new ListItem(dr["Title"].ToString(), dr["ID"].ToString()));
  }
}

頁面中生成的html代碼如下:

<table id="listTest" border="0"> 
<tr> 
  <td>
    <input id="listTest_0" type="checkbox" name="listTest$0" />
    <label for="listTest_0">基于jQuery的一個震動效果</label>
  </td> 
  </tr>
<tr> 
  <td><input id="listTest_1" type="checkbox" name="listTest$1" />
    <label for="listTest_1">使用css的overflow屬性改變縮略圖大小</label>
  </td>
</tr>
</table>

可以看出checkboxlist轉(zhuǎn)換為一個表格的形式,并且其中沒有value值。label中的值,即為text值。當點擊它時,也可以選中checkbox,這里在選checkbox時提高了用戶體驗。
下面進入我們的處理過程,首先,在綁定checkboxlist時,為ListItem每個對象添加一個alt屬性,值保存對應(yīng)的value值,代碼如下:

if (dt != null && dt.Rows.Count > 0)
{
  foreach (DataRow dr in dt.Rows)
  {
    //分別為text值、value值
    listTest.Items.Add(new ListItem(dr["Title"].ToString(), dr["ID"].ToString()));
  }
  //為ListItem對象添加alt屬性,值保存value值
  foreach (ListItem li in listTest.Items)
  {
    li.Attributes.Add("alt", li.Value);
  }
}

現(xiàn)在,生成的html代碼如下:

<table id="Table1" border="0"> 
<tr> 
  <td>
    <span alt="400"><input id="listTest_0" type="checkbox" name="listTest$0" />
    <label for="listTest_0">基于jQuery的一個震動效果</label></span>
  </td> 
</tr>
<tr> 
  <td><span alt="398"><input id="listTest_1" type="checkbox" name="listTest$1" />
  <label for="listTest_1">使用css的overflow屬性改變縮略圖大小</label></span>
  </td>
</tr>
</table>

從上邊可以看出,多了一個span標簽,里邊alt的值即為我們需要的value值。使用下邊的jQuery代碼即可獲得:

$(document).ready(function() {
  $("#btnShow").click(function() {
    var valuelist = ""; //保存checkbox選中值
    //遍歷name以listTest開頭的checkbox
    $("input[name^='listTest']").each(function() {
      if (this.checked) {
        //$(this):當前checkbox對象;
        //$(this).parent("span"):checkbox父級span對象
        valuelist += $(this).parent("span").attr("alt") + ",";
      }
    });
    if (valuelist.length > 0) {
      //得到選中的checkbox值序列,結(jié)果為400,398
      valuelist = valuelist.substring(0, valuelist.length - 1);
    }
  });
});

以上就是jQuery獲取checkboxlist的value值的方法,不知道大家有沒有真正理解,希望這篇文章能夠幫到大家。

相關(guān)文章

最新評論