我有名字,姓氏和电子邮件输入字段。客户的要求是仅当名字或姓氏值存在时才需要电子邮件字段。如果在这两个字段中的任何一个中都没有输入值,则不需要电子邮件。我已经开发出可以假定该表格始终为空的代码。问题是当用户已经在其中输入数据并且用户正在加载表单时。在这种情况下,我的代码没有用。这是到目前为止我所拥有的工作示例。
$(".check").on("keyup blur", function() {
var fldVal = $(this).val();
if (fldVal) {
$("#email").closest("div").addClass("required");
$("#email").prop("required", true);
} else {
$("#email").closest("div").removeClass("required");
$("#email").prop("required", false);
}
});
.row {padding: 3px;}
.required label:after { content: " *"; color: red; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form name="text" id="test">
<div class="row">
<label>First Name:</label>
<input type="text" name="first" id="first" class="check">
</div>
<div class="row">
<label>Last Name:</label>
<input type="text" name="last" id="last" class="check">
</div>
<div class="row">
<label>Email:</label>
<input type="email" name="email" id="email">
</div>
<button type="button" name="submit" id="submit">Submit</button>
</form>
我想让我的代码检查页面加载的所有要求。如果可能的话,所有这些都应使用一个功能完成。我想不出实现此目标的好方法。如果您有任何想法请告诉我。