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

JQuery一种取同级值的方式 比如你在GridView中如下

2012年08月09日 ⁄ 综合 ⁄ 共 2989字 ⁄ 字号 评论关闭

<asp:GridView ID="gvReceipt" runat="server" Width="100%" AutoGenerateColumns="False" DataKeyNames="ID" CssClass="Grid"  >
    <Columns>
        <asp:TemplateField>                               
            <ItemTemplate >
                <input type="checkbox" id="chkReceipt" value='<%#Eval("ID") %>' name="chkReceipt" />
                <input id="hdCustomerCode" type="hidden"  value='<%#Eval("CustomerCode") %>' />
                <input id="hdCustomerName" type="hidden"  value='<%#Eval("Customer") %>' />
                <input class="hdStatus" type="hidden"  value='<%#Eval("Department") %>' />
            </ItemTemplate>                       
        </asp:TemplateField>

</asp:GridView>

你想取选中的checkbox后面隐藏域中的value,如下:

 

function SelectReceipt()
{
    var checknum = 0;
    var customerCode = "";
    var type = "";
    var url = "";
    checknum = $("input:checked").length;
    if (checknum > 1)
    {
        alert("只能选择一条记录进行收款!");
        return false;
    }
    else
    {
        alert(checknum);
        if (checknum == 1)
        {
            customerCode = $("input:checked").next().attr("value"); //通过next()方法取,如果要取再下一个hdCustomerName的值,可以.next().next()。
            //customerName = $("input:checked~#hdCustomerName").val();//IE用ID会报错,firefox不会
            type = $("input:checked~.hdStatus").attr("value");//或者通过用class的方式取,
            url = 'PreReceiptDeposit.aspx?customerCode=' + customerCode + '&departmentType=' + type;               
        }
        else
        {
            url = 'PreReceiptDeposit.aspx?customerCode=' + '' + '&departmentType=' + type;
        }
        alert(url);
       

        UniversalOpenWindowAndBreak(640, 600, url, 1);
        return true;
    }
}

 

 

2jQuery--checkbox全选/取消全选

<html>
<head>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
</head>
<body>
<input type="checkbox" name="chk_list" id="chk_list_1" value="1" />1<br />
<input type="checkbox" name="chk_list" id="chk_list_2" value="2" />2<br />
<input type="checkbox" name="chk_list" id="chk_list_3" value="3" />3<br />
<input type="checkbox" name="chk_list" id="chk_list_4" value="4" />4<br />
<input type="checkbox" name="chk_all" id="chk_all" />全选/取消全选
<script type="text/javascript">
$("#chk_all").click(function(){
     $("input[name='chk_list']").attr("checked",$(this).attr("checked"));
});
</script>
</body>
</html>

 

jQuery.attr  获取/设置对象的属性值,如:

$("input[name='chk_list']").attr("checked");     //读取所有name为'chk_list'对象的状态(是否选中)

$("input[name='chk_list']").attr("checked",true);      //设置所有name为'chk_list'对象的checked为true

再如:

$("#img_1").attr("src","test.jpg");    //设置ID为img_1的<img>src的值为'test.jpg'
$("#img_1").attr("src");     //读取ID为img_1的<img>src值

 

 下面的代码是获取上面实例中选中的checkbox的value值:

 

<script type="text/javascript">
    //获取到所有name为'chk_list'并选中的checkbox(集合)
    var arrChk=$("input[name='chk_list]:checked");
    //遍历得到每个checkbox的value值
    for (var i=0;i<arrChk.length;i++)
    {
         alert(arrChk[i].value);
    }
</script>

下面是用$.each()遍历的代码:

 <script type="text/javascript">
    var arrChk=$("input[name='chk_list']:checked");
    $(arrChk).each(function(){
       window.alert(this.value);                        
    }); 
});
</script>

 

 

抱歉!评论已关闭.