![]() |
1
1
是的,验证器在updatepanel中工作,但您至少需要使用asp.net 2.0的sp1。如果使用sp1,则不需要也不应该使用验证程序的“ajax版本”。 有关此主题的详细信息,请访问: |
![]() |
2
1
我不想强制更新。在某些情况下,当用户更改某个表单元素的值时,我想验证某些表单元素。当用户更改为单选按钮或下拉列表时,会发生自动回发。当回发发生时,我希望验证控件像按下提交按钮一样启动。 这些导致回发的控件已启用“原因还原”。另一个测试是在导致回发的控件的事件处理程序中,我有一个page.validate()。 问题是为什么按钮回发会触发验证,而不是另一个导致回发的控件? |
![]() |
3
1
也许我们可以从顶部拿走它。你能回答这些问题吗?
注意你的验证器 必须 位于更新的UpdatePanel中,以便他们显示错误消息。如果它们不在更新的updatepanel中,则验证程序无法更改它们在浏览器上的外观。 |
![]() |
4
0
你有没有在你的updatepanel上调用update? |
![]() |
5
0
不久前,它们被包含在.NETframework的更新中,所以是的,您在VS2008SP1中有它们。我发现了一个问题,customvalidators的服务器端方法两次触发,没有“邪恶”的效果,但其他方面它们工作正常。 至于您遇到的具体问题,可能验证器不在updatepanel中,或者其他一些面板最终被发布的控件刷新,而不是您想要的控件?或者甚至有些验证组是在某个地方定义的,只有这些组最终被验证?不看代码很难说。 但是确保您的验证器被显示是很容易的:myupdatepanel.update()将强制刷新。 |
![]() |
6
0
最后,我使用了一个自定义验证器,并在代码背后进行了自己的验证,并设置了自定义验证器的错误消息。这样我就有了更大的灵活性,而且很管用。 使用ajax,感觉就像客户端验证。 |
![]() |
Haim Ohayon · 这些链接之间有什么区别? 2 年前 |