通过javascript获取数组文本字段值

时间:2014-02-21 10:19:04

标签: javascript php html

在我的进程文本中提交数组我需要通过javascript获取值,但我的代码不能正常运行我的代码

<input type="text" id="itemid[]" name="itemid[]" class="span12"/>

和javascript代码

function getstock()
{
 var itemidarr=document.getElementById('itemid[]');
 if(itemidarr!= null)
 {

    alert(itemidarr.length);

 }
}

的任何其他解决方案

6 个答案:

答案 0 :(得分:1)

ID不能包含括号,这些:[],所以:

<input type="text" id="itemid1" name="itemname1" class="span12"/>
<input type="text" id="itemid2" name="itemname1" class="span12"/>
<input type="text" id="itemid3" name="itemname1" class="span12"/>

然后你必须遍历ID:

function getstock()
{
     for(var i=1; i<=3; i++){
         var itemidarr=document.getElementById("itemid"+i);
         if(itemidarr!= null) alert(itemidarr.length);   
     }
}

答案 1 :(得分:0)

您无法创建一个数组来填充输入文本,仅用于收音机或复选框等输入。

文本输入只接受一个字符串。

答案 2 :(得分:0)

此处的id属性不能包含[]。

将textboxex放入“fieldset tag” 像:

<fieldset id="field">
//Put you text boxes here<input type='text'>
</fieldset>

通过以下方式访问这些:

document.getElementById("list....").getElementsByTagName("input")[indexoftext];

indexoftext是您要选择的文本框。

希望它有所帮助!

答案 3 :(得分:0)

您可以尝试下面这样的内容

<input type="text" id="itemid" name="itemid" class="span12"/>
function getstock()
{
    var itemidarr = document.getElementsByName('itemid');
        for(var i = 0; i < itemidarr.length; i++){
            var item=document.getElementsByName('itemid')[i].value;
                if(item!= null)
                {
                  alert(item);
                }

    }
}

答案 4 :(得分:0)

  

  function getstock(){

     

var a = [];       jQuery.each(this,function(i,field){           a.push($修剪(field.value)。);       });       返回a;

     

}

可以使用此代码

答案 5 :(得分:0)

我得到了结果

function getstock1()
    {
    alert("test");
        var itemidarr = document.getElementsByName('itemid[]');
        for (var i = 0; i < itemidarr.length; i++)
        {
            alert(itemidarr[i].value);
        }