#javascript #jquery #html #validation #input
#javascript #jquery ( jquery ) #HTML #валидация #ввод #jquery #проверка
Вопрос:
Я совершенно новичок в JS и jQuery. Я написал базовую HTML-форму для вычисления значений и хочу проверить каждый ввод и проверить, содержит ли он ненулевое значение, но я не могу понять это. Я потратил много времени на поиски, прежде чем опубликовать это. Помните, что я совершенно новичок, так что полегче со мной, пожалуйста. Вот мой сценарий для проверки входных данных.
$('#ppm_Pt').on('change', function () {
var input = $(this);
var is_num = input.val();
if (is_num)
{
$('#Calculate').prop("disabled", false)
}
else
{
$('#Calculate').prop("disabled", true)
}
});
Я могу заставить это работать, чтобы проверить, есть ли какие-либо входные данные для ppm_Pt, но вместо этого я хочу проверить все входные данные типа number в моей HTML-форме, и вместо того, чтобы просто проверять любое значение, я хочу проверить значения null и 0. Я знаю, что есть способ. Я пытался использовать метод each(), но безуспешно. Пожалуйста, помогите. Спасибо.
Комментарии:
1. Итак, эти поля, их может быть любое количество? Вы просто хотите проверить что-нибудь, кроме числа?
2. Пожалуйста, предоставьте некоторый HTML
3. Да, у меня есть несколько полей ввода типа number, и я хотел бы отключить кнопку calculate, когда пользователь вводит не-число, 0 или оставляет его пустым. Другими словами, когда все числовые поля будут правильно заполнены, включите мою кнопку вычисления
4. @AdrianForsius ‘code’ ‘<div> <label for=»ppm_Pt»> Ppm (Pt) </label> <тип ввода =»число» id =»ppm_Pt» name=»ppm_Pt» value=»» /> </ div> <div>Вычислить » onclick=»calc()» отключено> Рассчитать цену </button> </ div> ‘
5. Есть много других полей ввода, похожих на мой ppm_Pt. Я хотел бы иметь возможность использовать jQuery для выбора всех элементов типа number и последующей проверки. Я понимаю, что в своем первоначальном вопросе я проверял только один ввод ‘ppm_Pt’
Ответ №1:
Вы выполняете выбор идентификатора для элемента, если это ваша форма, вы, вероятно, сделали бы что-то вроде:
$('#ppm_Pt').on('change', 'input', function () {
var input = $(this);
var is_num = input.val();
if (is_num !== '')
{
$('#Calculate').prop("disabled", true);
}
else
{
$('#Calculate').prop("disabled", false);
}
});
Комментарии:
1. if (is_num !== «) == if (is_num)
2. Когда я пытаюсь это сделать, моя кнопка остается отключенной, независимо от того, что я ввожу в поле. Будет ли иметь значение, если моя кнопка уже отключена в моей HTML-форме?
3. Этот код проверит все мои входные данные, и если какие-либо из них будут изменены, моя кнопка будет включена. Я хотел бы изменить его, чтобы он оставался отключенным до тех пор, пока не будут введены все числовые поля.
code: $('input[type="number"]').on('change', function () { var input = $(this); var is_num = input.val(); if (is_num) { $('#Calculate').prop("disabled", false); } else { $('#Calculate').prop("disabled", true); } });