Jquery验证引擎 - 如何使用控件ID而不是名称

时间:2015-01-27 22:56:51

标签: jquery asp.net jquery-validation-engine

我一直在使用这里找到的JQuery验证引擎:https://github.com/posabsolute/jQuery-Validation-Engine

我在Asp.net webforms网站(不是MVC)中使用它。我在主页面中有表单标签,并从那里调用验证功能。

$(function () {
                $("#form1").validationEngine('attach', { promptPosition: "topRight" });
            });

如果控件在MasterPage上,验证器工作正常,但如果它们是从内容页面引入的,则不会验证它们。

我环顾四周,发现这是因为.net重命名控件以避免冲突:https://stackoverflow.com/a/7353664/1218621

所以我在我的MasterPage指令中放了ClientIDMode =“Static”,但这只保留了表单控件ID,而不是名称。此jquery验证引擎按名称调用项目。

我知道我可以编写一个脚本来重命名我的控件,但是我已经读过,之后我就无法在回发时引用它们的属性了,看起来这不是最佳实践

由于我可以通过使用ClientIDMode =“Static”来确保控件ID是什么,但是我不能指望他们的名称值没有改变,有没有办法简单地让jquery validationengine在控件ID上工作而不是名字?

1 个答案:

答案 0 :(得分:0)

您还需要将ClientIDMode="Static"放在内容页面中的控件上。这是一个非常好的客户端库;您在服务器端验证中使用了什么?您是否尝试过使用ajax[selector]funccall[selector]验证方法?