gpt4 book ai didi

c# - 在 c# asp.net 中将条件 requiredFieldValidators 添加到动态创建的表单

转载 作者:太空宇宙 更新时间:2023-11-03 14:17:40 25 4
gpt4 key购买 nike

好的,

我有一个完全呈现的动态表单(我不知道表单的内容,它是通过网络服务提供给我的)

我使用了 asp.net RequiredFieldValidator用于验证,因为我阅读了 this article我们可以根据字段是否可见动态地打开和关闭验证器与 ValidatorEnable(val, enabled)功能。

虽然现在我得到了呈现的表单,但我在使用此 javascript 时遇到了一些麻烦,因为我不想将它放在 aspx 文件本身中,(无论如何都没有控件,因为表单是从网络服务数据在代码隐藏中构建的...)

所以我查看了 clientId,发现验证器的客户端 ID 是它呈现到的跨度的 ID。

所以我尝试在 firebug 中运行它来测试我是否可以启用/禁用其中一个验证器,但这似乎是不可能的,jQuery span 元素没有启用它的属性。

ValidatorEnable($("#ContentPlaceHolderDefault_MasterWithNavContent_Poll_4_reqAnswer_373ac8b7_8da9_467b_b9b4_d586e45a7504"), false);

以及随之而来的 html

<div class="question-container question-odd" id="ContentPlaceHolderDefault_MasterWithNavContent_Poll_4_question-373ac8b7-8da9-467b-b9b4-d586e45a7504">
<div class="question-meta">
<h3 class="validation-label">Which club have you visited?</h3>
<span style="display: block; margin-bottom: 10px; margin-top: 5px;" class="error validation" id="ContentPlaceHolderDefault_MasterWithNavContent_Poll_4_reqAnswer_373ac8b7_8da9_467b_b9b4_d586e45a7504">Please fill out this field.</span>
</div>
<input type="text" class="answer-container text" id="ContentPlaceHolderDefault_MasterWithNavContent_Poll_4_answer_373ac8b7_8da9_467b_b9b4_d586e45a7504" name="ctl00$ctl00$ctl00$ContentPlaceHolderDefault$MasterWithNavContent$Poll_4$answer_373ac8b7_8da9_467b_b9b4_d586e45a7504">
</div>

有人知道我哪里错了吗?也许我要快速从服务器端 ClientId 跳转到 <span> RFV 渲染成哪个?但它们看起来完全一样。希望有人能指出我正确的方向!

最佳答案

也许更好的方法是遍历客户端验证器数组 (Page_Validators) 并找到您要禁用的验证器。

另见 this MSDN pagethis codeproject article获取更多信息。

关于c# - 在 c# asp.net 中将条件 requiredFieldValidators 添加到动态创建的表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6243546/

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