gpt4 book ai didi

javascript - 如何在 jQuery 中获取具有特定 ValidationGroup 的文本框?

转载 作者:行者123 更新时间:2023-11-30 13:36:54 24 4
gpt4 key购买 nike

我的用户控件中有一个 ASP.NET TextBox ID="txtDate"。它设置了 ValidationGroup="MyUC"。现在我的 UC 在 Repeater Control 中。所以会有同一个文本框的多个实例。我能够获取所有文本框,例如:$("[id$='_txtDate']");

每个 txtDate 都会动态分配一个单独的 ValidationGroup。所以我想使用 jQuery/javascript 获取基于 id + ValidationGroup 的文本框。

如何实现?非常感谢任何指导。

根据 Josiah 的回复和我发现的方式编辑:

抱歉,我的场景有点复杂,无法包含整个代码。简而言之,文本框附加到 jquery datepicker,下面的代码在选择日期时运行。同一个处理程序附加到多个文本框。这是我所拥有的:

var valgrp="MyGroup"; /*this mygroup is dynamic but keeping static for e.g.*/ 
var txtdate1 = $("[id$='txtDate']").filter(function(){if(this.Validators!=null){return this.Validators[0].validationGroup == valgrp;}});
var txtdate2 = $("[id$='txtDate']").filter(function(){return this.validationGroup == valgrp;});
alert("date1- " + txtdate1.val()); /*this returns date selected from datepicker*/
alert("date2 " + txtdate2.val()); /*this returns empty*/

根据日期我想做点别的。所以 txtdate1 目前正在为我工​​作,我不必将类添加到我的文本框。我正在玩 txtdate2,它的行为与我的预期不符,所以我不得不发布这个问题。

这是一个示例测试,用于查看未返回的 this.validationGroup:

 $(function () {
$("#btntest").click(function () {
$("[id$='txtDate']").each(function () {
alert(this.validationGroup);//returns undefined
alert(this.Validators[0].validationGroup); //returns "test"
});
});
});
<input id="btntest" type="button" value="button" />
<asp:TextBox ID="txtDate" runat="server" ValidationGroup="test"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Text="*" ErrorMessage="Required." ControlToValidate="txtDate" ValidationGroup="test"></asp:RequiredFieldValidator>

最佳答案

虽然 Josiah 的解决方案不起作用,但他将类附加到文本框的想法可能是一个潜在的解决方案。由于它不完全符合我的需要,我会回答我自己的问题。这是我想出的解决方案:

var valgrp="MyGroup"; /*this mygroup is dynamic but keeping static for e.g.*/ 
var txtdate1 = $("[id$='txtDate']").filter(function(){if(this.Validators!=null){return this.Validators[0].validationGroup == valgrp;}});

上面的代码返回了我正在寻找的文本框。关键是

this.Validators[0].validationGroup

它获取附加到文本框 (this) 的第一个验证器控件的 validationGroup。

关于javascript - 如何在 jQuery 中获取具有特定 ValidationGroup 的文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4474329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com