Jquery取当前选中项后面兄弟节点中某个隐藏域或控件中的值 + 调用 webserivce

这里介绍一个我遇到的问题。就是在gridview中会放一个checkbox来进行选中与否,会在这个checkbox后面放几个hidden来保存几个需要用到的值,

现在需要做的是 ,判断选个 选中的checkbox后面 的hidden中的值 是否 是符合条件的,即必须取选中的checkbox后面hidden中的值进行判断,如下:

<asp:GridView ID="gvTraineeBadge" runat="server" AutoGenerateColumns="False"
    CssClass="Grid" Width="80%" DataKeyNames="ID" >
  <Columns>
      <asp:TemplateField HeaderText="选择">
        <HeaderTemplate>
            <input type="checkbox" name="chkAll" id="chkAll" />
        </HeaderTemplate>
         <ItemTemplate>
              <input type="checkbox" name="chkCard" class="chkCard" value='<%#Eval("ID") %>' />
              <input  class="hfBasid" type="hidden"  value='<%#Eval("AssBasID") %>' />
              <input  class="hfAssessorName" type="hidden"  value='<%#Eval("AssessorName") %>' />
              <input  id ="hfReturnFlag" class="hfReturnFlag" type="hidden"  value='<%#Eval("Status") %>' />
         </ItemTemplate>
         <ItemStyle HorizontalAlign="Center" />
      </asp:TemplateField>

</Columns>
</asp:GridView>

 

脚本如下:

 

function ReturnBackCard()
{
    if (confirm("确定要归还吗?") == true)
    {
        var tbid = "";
        var status = "";
        var flag = true;

        var checkNum;
        checkNum = $('.chkCard:checked').length;
       
        if (checkNum <= 0)
        {
            alert("请选择要归还的记录!");
            return false;
        }
        else
        {
            $("input[name='chkCard']:checked").each(
                function()
                {

                    //status1 = $(".chkCard:checked~.hfReturnFlag").attr("value");
                    status = $(this).parents("td").find("#hfReturnFlag").val();
                    //alert(status);
                    if (status == "False")
                    {
                        alert("请选择没有归还的记录!");
                        flag = false;
                        return false;
                    }
                    else
                    {
                        tbid += $(this).val() + ";";
                    }
                });

            if (flag)//为真才处理
            {
                tbid = tbid.substring(0, tbid.length - 1);
                $.ajax({
                    type: "post",
                    contentType: "application/json",
                    url: "../SaveDataWebService.asmx/ReturnCardById",
                    dataType: 'json',
                    data: "{tbid:'" + tbid + "'}",
                    success: function(result)
                    {
                        alert("归还成功!");
                        window.location.reload();
                        return true;

                    },
                    error: function(msg)
                    {
                        alert("归还失败!");
                        return false;
                    }
                });
                return false;

            }
            else
            {
                return false;
            }
        }
    }

}

 

posted @ 2010-08-23 15:33  Vihone  阅读(4191)  评论(0编辑  收藏  举报