提取form里面的span元素

我有一个表单,里面有span元素和input text元素,我要把js操作把span隐藏,吧text显示,具体应该怎么做,
PS.我的表单是foreach获得的,有N个表单,我用button onclick=“modify(this)”,取到了button对象。


    function modify(btn) {
        var f = $(btn).closest('form');//button所在表单
        //找到此表单下的输入框显示,span隐藏
        f.find(':text').show();
        f.find('span').hide();
    }

找到所有元素隐藏不就可以了嘛

要么直接标签选择 显示和隐藏 ,要么就是定义id 来hide(),show();;2楼方式正解, 取到当前的对象里的表单form,然后find()到表单的text,span属性来显示隐藏

给span元素定义一个class或者是唯一的id,然后在js里面获取class或者id,直接hide()隐藏就行了。

    <form action="">
        <span>span11</span>
        <span>span12</span>
        <span>span13</span>
        <input type="text" value="input11">
        <input type="text" value="input12">
        <input type="text" value="input13">
        <input type="button" onclick="modify(this);" value="按钮">
    </form>
    <form action="">
        <span>span21</span>
        <span>span22</span>
        <span>span23</span>
        <input type="text" value="input21">
        <input type="text" value="input22">
        <input type="text" value="input23">
        <input type="button" onclick="modify(this);" value="按钮">
    </form>
    <form action="">
        <span>span31</span>
        <span>span32</span>
        <span>span33</span>
        <input type="text" value="input31">
        <input type="text" value="input32">
        <input type="text" value="input33">
        <input type="button" onclick="modify(this);" value="按钮">
    </form>
    <script type="text/javascript">
        function modify(btn){
            var form = btn.parentElement;
            for (var i = 0; i < form.children.length; i++) {
                if (form.children[i].tagName == "SPAN") {
                    form.children[i].style.visibility = "hidden";
                }
                if (form.children[i].tagName == "INPUT" && form.children[i].type == "text") {
                    form.children[i].style.visibility = "visible";
                }
            }
        }
    </script>