Здравствуйте. Помогите, пожалуйста, понять почему не работает следующий код.
$(document).ready(function () {
//Email validation
$('#email').on('input', function () {
emailValidation('email');
});
function emailValidation(fieldName) {
var input = $('#' + fieldName).val(); //почему данное выражение не валидно
var re = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+[a-z]*$/;
var is_email = re.test(input);
setBorderStyle(is_email, fieldName)
}
Однако получаю
Uncaught Error: Syntax error, unrecognized expression: #[object HTMLInputElement]
at Function.ga.error (jquery.min.js:2)
at ga.tokenize (jquery.min.js:2)
at ga.select (jquery.min.js:2)
at Function.ga [as find] (jquery.min.js:2)
at r.fn.init.find (jquery.min.js:2)
at r.fn.init (jquery.min.js:2)
at r (jquery.min.js:2)
at emailValidation (validator.js:41)
at HTMLInputElement.<anonymous> (validator.js:4)
at HTMLInputElement.dispatch (jquery.min.js:3)
При вводе в поле я попадаю в
$('#email').on('input', function ()
После падаю на $('#' + fieldName).val();.
Что можно предпринять в этой ситуации?