问答详情
源自:9-2 getElementsByName()方法

如何通过name获取value值?

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function word(){
    alert(document.getElementsByName("in").value);
}  
</script>
</head>
<body>
		<input name="in" type="button" onclick="word()" value="111" />
		<input name="in" type="button" onclick="word()" value="222" />
		<input name="in" type="button" onclick="word()" value="333" />

</body>
</html>

随意点击其中一个按钮,然后获取它的value值,如何才能做到啊?

提问者:小台风 2017-04-02 01:23

个回答

  • 黑色丶毛衣
    2017-04-02 15:42:31
    已采纳

    先谈谈你那个代码为什么不行吧:

    var arr=document.getElementsByName("in");

    获取的是数组,共有

    arr[0],arr[1],arr[2]

    除非你明确指出点击事件具体指代哪一个数组项,这样才会有value属性,即

    arr[0].value;

    才会成立。

    我贴一下我给出的解决办法代码吧:

    <!DOCTYPE HTML>
    <html>
    <head>
    <script type="text/javascript">
    function word(x){
        // var arr=document.getElementsByName("in");
        // alert(arr[0].value);
        alert(x.value);
    }  
    </script>
    </head>
    <body>
    <input name="in" type="button" onclick="word(this)" value="111" />
    <input name="in" type="button" onclick="word(this)" value="222" />
    <input name="in" type="button" onclick="word(this)" value="333" />
     
    </body>
    </html>

    这个方法虽然解决了你所说的点击哪一个就弹出那一个的值,

    但是并没有用到document.getElementsByName()

    主要是我没想到用document.getElementsByName()怎么可以让浏览器定位到我所点击的标签。

  • qq_佑扌婳晴_0
    2018-09-28 17:12:15

    <!DOCTYPE HTML>
    <html>
    <head>
        <script type="text/javascript">
            function word(x){
                var arr=document.getElementsByName("in");
                alert(arr[x].value);
               // alert(x.value);
            }
        </script>
    </head>
    <body>
    <input name="in" type="button" onclick="word(0)" value="111" />
    <input name="in" type="button" onclick="word(1)" value="222" />
    <input name="in" type="button" onclick="word(2)" value="333" />
    
    </body>
    </html>