Вы можете использовать метод onsubmit .
<form id="requiredform" class="verify-box" onsubmit="return getdata()" >
<input type="text" id="vb_report_no" placeholder="Report Number" size="22" data-error="This field is required." class="" required>
<input type="text" id="vb_report_date" placeholder="Date of Issue" size="12" class="hasDatepicker" data-error="This field is required." required>
<input type="text" id="vb_verif_pin" placeholder="Verification PIN" size="22">
<input type="submit" value="Verify" id="vb_verify_button">
</form>
function getdata() {
check_required_inputs(true);
}
Попробуйте querySelectorAll с селектором attribute , чтобы получить все необходимые входные данные в документе .
document.getElementById('requiredform').querySelectorAll("[required]")
Теперь функция будет такой,
function check_required_inputs(hasbeenSubmited) {
var params = "";
console.log(hasbeenSubmited)
if (hasbeenSubmited) {
document.getElementById('requiredform').querySelectorAll("[required]").forEach(function (element) {
if ($(element).val() == "") {
alert('Please fill all the fields');
}
});
params = "?rpt=" + jQuery("#vb_report_no").val() + "&d=" + jQuery("#vb_report_date").val() + "&pin=" + jQuery("#vb_verif_pin").val();
}
window.location.href = "verify-reports.php" + params;
}
Для более подробной информации: как получить значение из формы перед отправкой
Проверьте рабочий фрагмент здесь ..
function check_required_inputs(hasbeenSubmited) {
var params = "";
console.log(hasbeenSubmited)
if (hasbeenSubmited) {
document.getElementById('requiredform').querySelectorAll("[required]").forEach(function (element) {
if ($(element).val()== "") {
alert('Please fill all the fields');
}
});
params = "?rpt=" + jQuery("#vb_report_no").val() + "&d=" + jQuery("#vb_report_date").val() + "&pin=" + jQuery("#vb_verif_pin").val();
}
console.log(params);
window.location.href = "verify-reports.php" + params;
}
function getdata() {
check_required_inputs(true);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="requiredform" class="verify-box" onsubmit="return getdata()" >
<input type="text" id="vb_report_no" placeholder="Report Number" size="22" data-error="This field is required." class="" required>
<input type="text" id="vb_report_date" placeholder="Date of Issue" size="12" class="hasDatepicker" data-error="This field is required." required>
<input type="text" id="vb_verif_pin" placeholder="Verification PIN" size="22">
<input type="submit" value="Verify" id="vb_verify_button">
</form>