您的位置:首页 > Web前端 > JQuery

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

2010-08-23 15:33 302 查看
这里介绍一个我遇到的问题。就是在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;
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: