JavaScript-получение значений HTML-формы
Как я могу получить значение HTML-формы для передачи в JavaScript?
это правильно? Мой скрипт принимает два аргумента один из текстового поля, один из выпадающего списка.
<body>
<form name="valform" action="" method="POST">
Credit Card Validation: <input type="text" id="cctextboxid" name="cctextbox"><br/>
Card Type: <select name="cardtype" id="cardtypeid">
<option value="visa">Visa</option>
<option value="mastercard">MasterCard</option>
<option value="discover">Discover</option>
<option value="amex">Amex</option>
<option value="diners">Diners Club</option>
</select><br/>
<input type="button" name="submit" value="Verify Credit Card" onclick="isValidCreditCard(document.getElementById('cctextboxid').value,document.getElementById('cardtypeid').value)" />
</body>
6 ответов:
HTML:
<input type="text" name="name" id="uniqueID" value="value" />JS:
var nameValue = document.getElementById("uniqueID").value;
документ.формы будут содержать массив форм на Вашей странице. Вы можете перебирать эти формы, чтобы найти конкретную форму, которую вы хотите.
var form = false; var length = document.forms.length; for(var i = 0; i < length; i++) { if(form.id == "wanted_id") { form = document.forms[i]; } }каждая форма имеет массив элементов, которые затем можно перебирать, чтобы найти нужные данные. Вы также должны иметь доступ к ним по имени
var wanted_value = form.someFieldName.value; jsFunction(wanted_value);
Если вы хотите получить значения формы (например, те, которые будут отправлены с помощью HTTP POST), вы можете использовать
JavaScript
new FormData(document.querySelector('form'))форма-сериализация (https://code.google.com/archive/p/form-serialize/)
serialize(document.forms[0]);jQuery
$("form").serializeArray()
вот пример из W3Schools :
function myFunction() { var elements = document.getElementById("myForm").elements; var obj ={}; for(var i = 0 ; i < elements.length ; i++){ var item = elements.item(i); obj[item.name] = item.value; } document.getElementById("demo").innerHTML = JSON.stringify(obj); }демо можно найти здесь.
несколько простых в использовании сериализаторов форм с хорошей документацией.
в порядке звезд Github,
Comments