通过 JavaScript 获取表单值

Get form values through JavaScript

本文关键字:表单 获取 JavaScript 通过      更新时间:2023-09-26

这是我的HJTML代码。我不知道如何使用JavaScript获取存储在filtertime[]中的值并使它们显示在我的屏幕上。

   <form action="index.php" method="post" >
    <div class="col-lg-6"><div class="f-txt-l"><input id="test" type="checkbox" name="filtertime[]" class="morning" value="Morning"></div> <div class="f-txt-r">Morning</div></div>
     <div class="col-lg-6"><div class="f-txt-l"><input  id="test" type="checkbox" name="filtertime[]" class="morning" value="Afternoon"></div> <div class="f-txt-r">Afternoon</div></div>
     <div class="col-lg-6"><div class="f-txt-l"><input  id="test" type="checkbox" name="filtertime[]" class="morning" value="Evening"></div> <div class="f-txt-r">Evening</div></div>
     <div class="col-lg-6"><div class="f-txt-l"><input  id="test" type="checkbox" name="filtertime[]" class="morning" value="Night"></div> <div class="f-txt-r">Night</div></div>
     <div class="col-lg-12"><input type="submit" name="button" class="apply-filter" value="Apply Filter"></div>

        </form>

   <script>
   var new =  document.getElementsById("test").innerhtml
   </script>

如何通过将值存储在数组中作为filtertime[]来获取 JavaScript 中的输入值?

试试

在您的表单中

<form action="index.php" id="myform" method="post" >

在 jQuery 中

 var datastring = $("#myform").serialize();

通过JS

var params = '';
for( var i=0; i<document.FormName.elements.length; i++ )
{
   var fieldName = document.FormName.elements[i].name;
   var fieldValue = document.FormName.elements[i].value;
   // use the fields, put them in a array, etc.
   // or, add them to a key-value pair strings, 
   // as in regular POST
   params += fieldName + '=' + fieldValue + '&';
}

form标签中添加id

<form action="index.php" id="form_name" method="post" >

使用以下代码通过JS获取所有表单元素:-

document.forms["form_name"].getElementsByTagName("input");

注意:- 仅当您的表单中没有selectstextareas时,上面的代码才有效。

如果您在 DOM 元素中分配了如下所示的id

<input type="text" name="name" id="uniqueID" value="value" />

然后,您可以通过以下代码访问它:-

Javascript:-

var nameValue = document.getElementById("uniqueID").value;

如果您的表单中有单选按钮,请使用以下代码:-

<input type="radio" name="radio_name" value="1" > 1
<input type="radio" name="radio_name" value="0" > 0<br>

Javascript:-

var radios = document.getElementsByName('radio_name');
for (var i = 0, length = radios.length; i < length; i++) {
    if (radios[i].checked) {
        // do whatever you want with the checked radio
        alert(radios[i].value);
        // only one radio can be logically checked, don't check the rest
        break;
    }
}

希望它能帮助你:)

这是

获取表单项数组的最简单方法

 var arrValues = [];
 for (var x =0; x < document.getElementsByClassName("morning").length ; x++)
 {
   arrValues.push(document.getElementsByClassName("morning")[x].checked);
 }

为此,最简单的方法是选择带有"morning"类的所有输入,然后,if选中每个外观:

    var item = document.getElementsByClassName("morning"); // get all checkbox
    var checkboxesChecked = []; // result array with ckecked ckeckbox
    for (var i=0; i<item.length; i++) {
         // if is checked add the value into the array
         if (item[i].checked) {
            checkboxesChecked.push(item[i].value);
         }
    }

    console.log(checkboxesChecked);

在"复选框选中"数组中,您拥有复选框的所有值。