簡體   English   中英

使用document.getElementsByName()無法正常工作嗎?

[英]Using document.getElementsByName() isn't working?

第二個警報命令的代碼按預期工作(顯示元素“ to”的值,但第一個警報命令不起作用(應該做同樣的事情)。這是為什么?

<html>
<head>
<script type="text/javascript">
function getValue()
  {
  alert(document.getElementsByName("to").value);
  alert(document.forms[0].to.value);  
  }
</script>
</head>
<body>
<form>
<input name="to" type="hidden" value="hoolah" />
<input type="button" onclick="getValue()" value="Get Value!" />
<form/>
</body>
</html>

getElementsByName返回一個HTMLCollection 您可以像這樣訪問第一項的值:

document.getElementsByName("to").item(0).value

或像這樣:

document.getElementsByName("to")[0].value

更多信息:

getElementsByName返回具有給定名稱的所有元素。 這意味着可以有多個。

如果要獲取第一個元素的值:

document.getElementsByName("to")[0].value

這是因為它將元素放入數組中,請嘗試以下示例:

function getValues(objName)
{  
    var arr = new Array();
    arr = document.getElementsByName(objName);

    alert("total objects with name \"textfield\" = \n" + arr.length);

    for(var i = 0; i < arr.length; i++)
    {
        var obj = document.getElementsByName(objName).item(i);
        alert(obj.id + " =  " + obj.value);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM