有一种方法可以使用表单字段集而不是每个输入?
我的观点:用户可以选择要填充的内容,但不必填写所有字段集输入
我有这两个:
1:
<fieldset>
<legend> legend </legend>
<label for="id"> label </label>
<input type="text" id="id" name="name">
<label for="id2"> label </label>
<input type="text" id="id2" name="name2">
</fieldset>
2:
<fieldset>
<legend> legend </legend>
<label for="id"> label </label>
<input type="radio" id="id" name="name">
<label for="id2"> label </label>
<input type="radio" id="id2" name="name">
</fieldset>
我使用 Angular ,如果它可以是最简单的。
答案 0 :(得分:1)
如果您只有2个选项,最简单的方法是:
<fieldset>
<legend> legend </legend>
<label for="id"> label </label>
<input type="text" id="id" name="name" ng-required="!name2">
<label for="id2"> label </label>
<input type="text" id="id2" name="name2" ng-required="!name">
</fieldset>
编辑:由于它们是动态的,您可能需要一个模型来帮助您了解每个字段集。
<fieldset>
<legend> legend </legend>
<label for="id"> label </label>
<input type="text" id="id" name="name" ng-model="fieldSetHasValue" ng-change="fieldSetHasValue = true">
<label for="id2"> label </label>
<input type="text" id="id2" name="name2" ng-model="fieldSetHasValue" ng-change="fieldSetHasValue = true">
</fieldset>
然后在提交之前,检查fieldSetHasValue是否为true。这只是实现这一目标的众多方法之一,如果你实现这一点,毫无疑问会有一些问题需要解决。这只是我头脑中的一个快速解决方案,而无需查看其余的代码。