嗨,试图整合这个检查 3 个年龄输入的验证功能。目前,它会突出显示不正确的输入,如果年龄未满 18 岁,则显示/隐藏错误消息。
如何使函数在所有 3 个输入上运行并停止重复自己?
//Adult age validation
validateAdultAge0: function() {
$('button[type="submit"]').on('click', function() {
var inputVal = parseInt( $("input[name='adultAges[0]']").val());
if (inputVal < 18) {
$("input[name='adultAges[0]']").css("border-color","red");
});
},
validateAdultAge1: function() {
$('button[type="submit"]').on('click', function() {
var inputVal = parseInt( $("input[name='adultAges[1]']").val());
if (inputVal < 18) {
$("input[name='adultAges[1]']").css("border-color","red");
});
},
validateAdultAge2: function() {
$('button[type="submit"]').on('click', function() {
var inputVal = parseInt( $("input[name='adultAges[2]']").val());
if (inputVal < 18) {
console.log ('fire');
$("input[name='adultAges[2]']").css("border-color","red");
});
}
我得到的最远的是:
validateAdultAges: function() {
$('button[type="submit"]').on('click', function() {
var inputVal = parseInt( $("input[name^='adultAges']").val());
if (inputVal < 18) {
console.log('fire');
$(this).find("input").css("border-color","red");
});
}
可能使用一个类(比如adultAges
)作为输入:
validateAdultAges: function() {
$('button[type="submit"]').on('click', function() {
$("input.adultAges").each(function() {
var $this = $(this),
inputVal = parseInt( $this.val(), 10);
if (inputVal < 18) {
$this.css("border-color","red");
}
});
});
}