我有一个asp DataList如下。我有一个Checkbox,如果我点击复选框,我需要为相应的文本框输入一个数字。如何验证它。如果我单击一个复选框,我必须在文本框中输入一些值(int)。需要仅对点击的人进行验证。提前谢谢!
<asp:DataList ID="dlstEnergyItems" runat="server"
RepeatColumns="4" RepeatDirection="Horizontal" Width="100%">
<ItemTemplate>
<asp:CheckBox ID="cbEnergyItems" runat="server" />
<asp:HiddenField ID="HdfEnergy" runat="server" />
<asp:HiddenField ID="HdfEnergyCID" runat="server" />
<asp:TextBox ID="txtBox" runat="server" />
</ItemTemplate>
</asp:DataList>
答案 0 :(得分:0)
使用ajax控件验证器为每个复选框插入asp textr框,并使其可见性和验证为false。在检查事件中,使其可见并设置为true以进行验证。因此,通过使用ajaxcontrol验证器,您可以验证文本框...
答案 1 :(得分:0)
$("#dlstEnergyItems").find("input[type='checkbox']").change(function(){
var checkbox = $(this);
var tr = checkbox.closest("tr");
var textbox = tr.find("input[type='text']");
if(!checkbox.is(":selected")){
textbox.unbind("blur");
return;
}
else{
textbox.focus();
textbox.blur(function(){
if(textbox.val().length == 0){
alert("pls fill textbox");
textbox.focus();
}
});
}
});
答案 2 :(得分:0)
这对我来说很糟糕
function chkEnergy() {
var fails = $('.check:has(input:checked)').next("[value=0]").length;
if (fails > 0) showStatus(true, "Please specify the Quantity");
return fails === 0;
}
thnks Nick Craver