2013-01-12 38 views
0

我们有一个ASP.Net webforms页面。在页面加载事件中,页面用数据填充一些输入。然后阻止它们,以便用户不能编辑它们。不幸的是,有些数据似乎是错误的,所以ASP.Net验证器将不允许用户发布表单。启用无效输入的最佳方法是什么?

有人决定解除阻止无效输入以允许用户编辑它们。我们在页面上有许多ASP.Net验证器,包括自定义验证器。我可以使用这些验证器来验证OnLoad事件中的数据并取消阻止无效字段,还是我需要手动取消阻止它们检查每个字段?什么是达到结果的最佳方式?

+0

为什么不只是全部解锁呢?用户可以自行解锁这些“被阻止”的表单字段,因此除非您完全信任用户并知道他们没有这样做,否则他们可以更改不希望他们更改的数据。无论如何,你也在使用无效数据填充字段也是很好奇的。 – MikeSmithDev

+0

@MikeSmithDev感谢您的建议!我明白你的意思,但我不负责做出这个决定。 –

回答

2

由于没有代码,我只能猜测这应该适用于你的逻辑。基本上,在设置所有字段的值后,可以运行Page.Validate()并根据数据的有效性设置可见性。

// set all your values 
_textBox1.Text = "Some Value 1"; 
_textBox2.Text = "Some Value 2"; 
Page.Validate(); 
_textBox1.Enabled = !_textBox1RangeVal.IsValid; 
_textBox2.Enabled = !_textBox2RequiredFieldVal.IsValid; 
+0

我希望我能避免样板代码。我收到了验证器验证并设置它们的Enabled属性的控件集合。看起来很奇怪。我只是想确保没有其他选择。谢谢! –

相关问题