Это должно сработать: (Без изменений в HTML)
<input style="display:none;" class="form-control col-md-5 col-8" id="pesel" minlenght="11" maxlength="11" type="text" name="pesel" value="324983274823" placeholder="PESEL" required>
<p>
<input class="submit-button" type='submit' name='submit' value='Wyślij' onclick="isValidPesel()">
</p>
<span id="error"></span>
JavaScript: ошибка заключалась в том, что вы не вызывали функцию validatepesel в конце.
function isValidPesel(pesel) {
function validatepesel(pesel) {
var reg = /^[0-9]{11}$/;
if (reg.test(pesel) == false) {
console.log("error");
document.getElementById('error').innerHTML = 'Niepoprawny numer pesel';
return false;
} else {
var digits = ("" + pesel).split("");
if ((parseInt(pesel.substring(4, 6)) > 31) || (parseInt(pesel.substring(2, 4)) > 12))
return false;
console.log("Error");
document.getElementById('error').innerHTML = 'Niepoprawny numer pesel';
var checksum = (1 * parseInt(digits[0]) + 3 * parseInt(digits[1]) + 7 * parseInt(digits[2]) + 9 * parseInt(digits[3]) + 1 * parseInt(digits[4]) + 3 * parseInt(digits[5]) + 7 * parseInt(digits[6]) + 9 * parseInt(digits[7]) + 1 * parseInt(digits[8]) + 3 * parseInt(digits[9])) % 10;
if (checksum == 0) checksum = 10;
checksum = 10 - checksum;
return (parseInt(digits[10]) == checksum);
}
}
var pesel = document.getElementById("pesel").value;
validatepesel(pesel);
}