Я пытаюсь проверить, имеет ли вход формы какое-либо значение (не имеет значения, какое значение), чтобы я мог добавить значение к URL-адресу действия для отправки, если это произойдет существовать. Мне нужно добавить имя параметра перед добавлением значения и просто оставить пустое имя параметра, например «P =», без какого-либо значения помешает странице.Как проверить, имеет ли вход формы значение
Вот мой код:
function getParam() {
// reset url in case there were any previous params inputted
document.form.action = 'http://www.domain.com'
if (document.getElementById('p').value == 1) {
document.form.action += 'P=' + document.getElementById('p').value;
}
if (document.getElementbyId('q').value == 1) {
document.form.action += 'Q=' + document.getElementById('q').value;
}
}
и форма:
<form name="form" id="form" method="post" action="">
<input type="text" id="p" value="">
<input type="text" id="q" value="">
<input type="submit" value="Update" onClick="getParam();">
</form>
Я думал, устанавливая значение == 1 будет делать простой существует, не существует проверки, независимо от того, какой представленной стоимости был, но я думаю, я ошибаюсь.
Кроме того, я использую инструкции if, но я считаю, что это плохой код, так как у меня нет другого. Возможно, используя оператор switch, хотя я не уверен, как я это установлю. Возможно:
switch(value) {
case document.getElementById('p').value == 1 :
document.form.action += 'P=' + document.getElementById('p').value; :
case document.getElementById('q').value == 1 :
document.form.action += 'Q=' + document.getElementById('q').value; break;
}
Вы не будете представлять что-либо, если ваши поля ввода не имеют имен. – kennebec
true, но в этом случае форма доступна только для обновления URL-адреса, и поскольку я захватываю значения этих входов по id, это не обязательно. – Choy
Вы понимаете, что можете изменить свой метод на 'GET', и значения будут добавлены к строке запроса? Вы должны иметь возможность обрабатывать пустые значения на сервере без проблем; что вы имеете в виду * помешает странице *? – RedFilter