Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中操作表单字段值_Javascript - Fatal编程技术网

如何在javascript中操作表单字段值

如何在javascript中操作表单字段值,javascript,Javascript,我试图获取一些复选框的值,并将它们输入到一个隐藏的表单字段中 我的复选框如下所示: <form> <input type="checkbox" name="chicken" id="chicken" value="chicken"/>Chicken <input type="checkbox" name="meat" id="meat" value="meat"/>Meat </form> <form method="post" a

我试图获取一些复选框的值,并将它们输入到一个隐藏的表单字段中

我的复选框如下所示:

<form>
  <input type="checkbox" name="chicken" id="chicken" value="chicken"/>Chicken
  <input type="checkbox" name="meat" id="meat" value="meat"/>Meat
</form>

<form method="post" action="">
   <input type="hidden" name="my-item-name" value="" />
   <input type="submit" name="my-add-button" value=" add " /> 
</form>

鸡
肉
我只需要提交隐藏字段数据,这样我希望选中复选框时隐藏字段的值会改变。因此,如果勾选了第一个复选框,我希望隐藏字段的值变为chicken,如果勾选了这两个复选框,则值应为chicken,meat

我正在使用以下javascript

function SetHiddenFieldValue()
{
  var checks = document.getElementsByName("checkbox");
  var hiddenFieldVal = "";

  for(i = 0; i < checks.length; i++)
  {

    if(hiddenFieldVal != "")
       hiddenFieldVal += ",";
    hiddenFieldVal += checks[i].value;
  }

  document.getElementById('my-item-name').value = hiddenFieldVal;
}

函数SetHiddenFieldValue()
{
var checks=document.getElementsByName(“复选框”);
var hiddenFieldVal=“”;
对于(i=0;i
但是当我添加项目时,它会同时添加这两个项目,它不会检查哪个项目被选中,有没有办法解决这个问题,所以当第一个项目被选中时,它只会添加该项目,如果两个项目都被选中,它会添加两个项目,用逗号分隔,

for(I=0;Ifor(i = 0; i < checks.length; i++)
{
    if (!checks[i].checked)
        continue;
    ....
}
{ 如果(!checks[i].选中) 继续; .... }
用于(i=0;i
您需要为复选框指定相同的名称才能将其分组:

<input type="checkbox" name="food[]" id="chicken" value="chicken"/>Chicken
<input type="checkbox" name="food[]" id="meat" value="meat"/>Meat
鸡肉
肉
在JavaScript函数中:

function SetHiddenFieldValue() {
    var checks = document.getElementsByName("food[]");
    var hiddenFieldVal = "";
    for (var i=0; i<checks.length; i++) {
        if (checks[i].checked) {
            if (hiddenFieldVal != "")
                hiddenFieldVal += ",";
            hiddenFieldVal += checks[i].value;
        }
    }
    document.getElementById('my-item-name').value = hiddenFieldVal;
}
函数SetHiddenFieldValue(){
var checks=document.getElementsByName(“食品[]”);
var hiddenFieldVal=“”;

对于(var i=0;i,您需要为复选框指定相同的名称以将其分组:

<input type="checkbox" name="food[]" id="chicken" value="chicken"/>Chicken
<input type="checkbox" name="food[]" id="meat" value="meat"/>Meat
鸡肉
肉
在JavaScript函数中:

function SetHiddenFieldValue() {
    var checks = document.getElementsByName("food[]");
    var hiddenFieldVal = "";
    for (var i=0; i<checks.length; i++) {
        if (checks[i].checked) {
            if (hiddenFieldVal != "")
                hiddenFieldVal += ",";
            hiddenFieldVal += checks[i].value;
        }
    }
    document.getElementById('my-item-name').value = hiddenFieldVal;
}
函数SetHiddenFieldValue(){
var checks=document.getElementsByName(“食品[]”);
var hiddenFieldVal=“”;

对于(var i=0;i您忘记测试检查[i]。已检查

function SetHiddenFieldValue() { 
  var checks = document.getElementsByName("checkbox");
  var hiddenFieldVal = ""; 
  for(i = 0; i < checks.length; i++) {
    if (checks[i].checked) {
      if(hiddenFieldVal != "")
        hiddenFieldVal += ",";
      hiddenFieldVal += checks[i].value;
      }
    }
  }
  document.getElementById('my-item-name').value = hiddenFieldVal; 
}
函数SetHiddenFieldValue(){
var checks=document.getElementsByName(“复选框”);
var hiddenFieldVal=“”;
对于(i=0;i
您忘记测试检查[i]。已检查

function SetHiddenFieldValue() { 
  var checks = document.getElementsByName("checkbox");
  var hiddenFieldVal = ""; 
  for(i = 0; i < checks.length; i++) {
    if (checks[i].checked) {
      if(hiddenFieldVal != "")
        hiddenFieldVal += ",";
      hiddenFieldVal += checks[i].value;
      }
    }
  }
  document.getElementById('my-item-name').value = hiddenFieldVal; 
}
函数SetHiddenFieldValue(){
var checks=document.getElementsByName(“复选框”);
var hiddenFieldVal=“”;
对于(i=0;i
您好,最好将值放入数组中,这样可以更轻松地创建逗号分隔的值。如果以后添加更多选项,也会更轻松

function SetHiddenFieldValue()
{
    var checks = document.getElementsByName("checkbox");
    var foods = new Array();
    for (i = 0; i < checks.length; i++)
    {
        if (checks[i].checked)
        {
           foods[i] = checks[i].value; 
        }
    }
    document.getElementById('my-item-name').value = foods.join(",");
}
函数SetHiddenFieldValue()
{
var checks=document.getElementsByName(“复选框”);
var=newarray();
对于(i=0;i
您好,最好将值放入数组中,这样可以更轻松地创建逗号分隔的值。如果以后添加更多选项,也会更轻松

function SetHiddenFieldValue()
{
    var checks = document.getElementsByName("checkbox");
    var foods = new Array();
    for (i = 0; i < checks.length; i++)
    {
        if (checks[i].checked)
        {
           foods[i] = checks[i].value; 
        }
    }
    document.getElementById('my-item-name').value = foods.join(",");
}
函数SetHiddenFieldValue()
{
var checks=document.getElementsByName(“复选框”);
var=newarray();
对于(i=0;i