繁体   English   中英

两种“形式”合而为一 <form> 冲突其必需的属性

[英]Two “forms” in one <form> clash their required attributes

问题 :我有一个页面,其中包含两个电子邮件表单(一个<form> ,其中两个div对用户来说看起来像表单)。 当您提交任何一个表单时,后面的C#都会查看该表单的值并将其通过电子邮件发送。 这很好用,现在我需要进行一些验证,但是我无法将required属性添加到inputs因为代码不知道这是两个单独的“表单”,并且需要分别处理每个表单的required属性。

我知道为什么会发生此问题,但是我想知道是否有一种方法可以告诉页面以组的形式处理required属性。

我已经尝试过 :两个“表单”都由后面的代码处理,因此需要在服务器端运行,因此单独的<form>元素将不起作用。 我曾尝试将“表单”作为<form>元素嵌套在服务器端<form> ,该元素根据required分隔required属性,但看似破坏了很多东西,并且我读到这通常是一种不好的做法。

我不是要问的 :要验证后面代码中的表单。

编辑 :David的答案非常适合验证文本框组,这是我所需要的。

为了进一步验证复选框,我使用了javascript。 onclientclick我们可以检查checkbox是否已选中,并使用Page_ClientValidate('validationgroup') ,然后返回true,否则返回false。 仅当onclientclick返回true时才触发onclick

使用带有两个提交按钮的一种形式。 使用validationgroup来区分

http://msdn.microsoft.com/en-us/library/ms227424(v=vs.100).aspx

如果您为每个提交按钮编写自己的验证功能,则应该可以

<input type='submit' onclick='return validateFirstButton()'/>

要验证复选框,请按照此处的说明进行操作:

http://codeclimber.net.nz/archive/2007/07/19/How-to-add-a-required-validator-to-a-CheckBoxList.aspx

因为这是从BaseValidator派生的, BaseValidator您将能够使用组。 希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM