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>
HTML:
<input type="text" name="name" id="uniqueID" value="value" />
JS:
var nameValue = document.getElementById("uniqueID").value;
document.forms将包含页面上的一组表单。 你可以循环这些表单来find你想要的特定表单。
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);
这里是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); }
演示可以在这里find。
如果你想检索表单值(例如那些可以使用HTTP POST发送的),你可以使用
JavaScript的
new FormData(document.querySelector('form'))
表单序列化( https://code.google.com/archive/p/form-serialize/ )
serialize(document.forms[0]);
jQuery的
$("form").serializeArray()
javascript参数意味着javascript函数参数? 如是:
你可以写一些函数。 在{"name":"value"}
这样的对象中序列化你的表单,然后你可以在函数中传递这个对象。