通过JavaScript获取表单值[重复]

问题描述 投票:0回答:3

这是我的 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>

如何通过将值存储在数组中获取 JavaScript 中的输入值

filtertime[]

javascript php html arrays arraylist
3个回答
2
投票

在您的

id
标签中添加
form

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

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

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

注意:- 仅当您的表单中没有

selects
textareas
时,以上代码才有效。

如果您在 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;
    }
}

希望对你有帮助:)


1
投票

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

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

1
投票

要做到这一点,最简单的方法是选择“上午”课程的所有输入,然后,foreach 查看是否已选中:

    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);

在“checkboxesChecked”数组中,您拥有选中框的所有值。

© www.soinside.com 2019 - 2024. All rights reserved.