jQuery使用之(四)处理页面的表单元素

优质
小牛编辑
126浏览
2023-12-01

表单是一个特殊的页面元素,value的值是最受关注的,jQuery提供了强大的val()方法来处理相关的操作。

1.获取表单元素的值。
直接调用val()方法时可以获取选择器的 中的第一个元素的value值。例如:

$("[name=radioGroup]:checked").val;

以上代码直接获取属性为radioGroup的表单元素中被选中的value值,十分便捷。对于某些表单元素,例如<option><button>没有value值将获取其显示的文本值。
如果选择器中的第一个表单元素是多选的(例如下拉菜单),val()将返回由选中项value值组成的数组

http://www.cnblogs.com/ahthw/p/4221608.html使用过DOM的方式获取了单选和多选情况下的选值,相比jQuery,代码十分长。使用val()可以直接获取表单的元素值,不用考虑下拉菜单是单选还是多选。

<script type="text/javascript">
        function displayVals() {
            //直接获取选中项的value值
            var singleValues = $("#constellation1").val();
            var multipleValues = $("#constellation2").val() || []; //因为存在不选的情况
            $("span").html("<b>Single:</b> " + singleValues + "<br><b>Multiple:</b> " + multipleValues.join(", "));
        }
        $(function() {
            //当修改选中项时调用
            $("select").change(displayVals);
            displayVals();
        });
    </script>

    <select id="constellation1">
        <option value="Aries">白羊</option>
        <option value="Taurus">金牛</option>
        <option value="Gemini">双子</option>
        <option value="Cancer">巨蟹</option>
        <option value="Leo">狮子</option>
        <option value="Virgo">处女</option>
        <option value="Libra">天秤</option>
        <option value="Scorpio">天蝎</option>
        <option value="Sagittarius">射手</option>
        <option value="Capricorn">摩羯</option>
        <option value="Aquarius">水瓶</option>
        <option value="Pisces">双鱼</option>
    </select>
    <select id="constellation2" multiple="multiple" style="height:120px;">
        <option value="Aries">白羊</option>
        <option value="Taurus">金牛</option>
        <option value="Gemini">双子</option>
        <option value="Cancer">巨蟹</option>
        <option value="Leo">狮子</option>
        <option value="Virgo">处女</option>
        <option value="Libra">天秤</option>
        <option value="Scorpio">天蝎</option>
        <option value="Sagittarius">射手</option>
        <option value="Capricorn">摩羯</option>
        <option value="Aquarius">水瓶</option>
        <option value="Pisces">双鱼</option>
    </select>

    <span></span>

以上代码直接使用val()获取了select的值,jQuery方式大大的缩短了代码的长度。

 2.设置表单元素的值。

与attr()和css()一样,val()也可以设置value的值,使用方法也大同小异。

<script type="text/javascript">
        $(function() {
            $("input[type=button]").click(function() {
                var sValue = $(this).val(); //先获取按钮的value值
                $("input[type=text]").val(sValue); //赋给文本框
            });

        });
    </script>

    <p>
        <input type="button" value="Feed">
        <input type="button" value="the">
        <input type="button" value="Input">
    </p>
    <p>
        <input type="text" value="click a button">
    </p>

以上代码使用到了两次val()方法,一次是获取button的value值,另一次是将获取的文本赋值给input文本框里。