1. 程式人生 > >HTML常用表單元素操作

HTML常用表單元素操作

在Web開發中,要經常操作表單元素,如input輸入框,select下拉選擇框,radio單選按鈕,checkbox複選框等。下面,我就總結一下自己常用的操作這些元素的JS程式碼。

一、input元素操作

1、獲取input輸入值

<div>
    <form action="">
        <input id="inputElement" type="text">
    </form>
    <button onclick="getInputValue()">獲取input輸入值</button>
</div>
<script>
    $(function () {

    });

    //獲取input輸入值
    function getInputValue() {
        //var inputValue = $("#inputElement").val();
        //alert("JQ獲取輸入值:"+inputValue);
        var inputValue = document.getElementById("inputElement").value;
        alert("JS獲取輸入值:" + inputValue);
    }
</script>

2、input焦點事件

獲得焦點和失去焦點事件:

<div>
    <form action="">
        <input onblur="inputOnBlur()" onfocus="inputOnFocus()" id="inputElement" type="text">
    </form>
</div>

<script>
    $(function () {
        //監聽input元件的獲得焦點事件,當input獲得焦點時,會觸發此事件
        $("#inputElement").focus(function () {
            console.log("JQ:input元件的獲得焦點事件");
        });

        //監聽input元件的失去焦點事件,當input失去焦點時,會觸發此事件
        $("#inputElement").blur(function () {
            console.log("JQ:執行input元件的失去焦點事件");
        });
    });
    function inputOnFocus() {
        console.log("JS:執行input元件的獲得焦點事件");
    }

    function inputOnBlur() {
        console.log("JS:執行input元件的失去焦點事件");
    }
</script>

3、監聽input輸入值變化

<div>
    <form action="">
        <input id="inputElement" type="text">
    </form>
</div>
<script>
    $(function () {
        //監聽輸入文字變化
        $("input[id='inputElement']").bind('input propertychange', function () {
            var val = $(this).val();
            console.log(val);
        })
    });
</script>

二、select元素操作

動態生成option節點、獲取select選中項:

$(function () {
    initSelectElement();

    $("#citySelectElement").change(function () {
        var selectedValue = $(this).val();
        if (selectedValue.length == 0) {
            alert("當前未選擇城市");
            return;
        }
        alert("select選中項的valuew值:" + selectedValue);
    });

});

//獲取select選中項
function getSelectValue() {
    //var selectedValue = $("#citySelectElement").val();
    //$("#citySelectElement").val()等價於$("#citySelectElement :checked").val()
    var selectedValue = $("#citySelectElement :checked").val();
    if (selectedValue.length == 0) {
        alert("當前未選擇城市");
        return;
    }
    //alert("select選中項的valuew值:" + selectedValue);

    //獲取select中選中的option項
    var selectedOptionObj = $("#citySelectElement :checked");
    alert("選中項:value = " + selectedOptionObj.val() + ", text = " + selectedOptionObj.text());
}

//JS程式碼動態渲染select資料
function initSelectElement() {
    var cityLisy = [
        ["nanning", "南寧市"],
        ["guiping", "桂平市"],
        ["hezhou", "賀州市"]
    ];
    var html = "";
    html += '<option value="">請選擇城市</option>';
    for (var i = 0; i < cityLisy.length; i++) {
        html += '<option value="' + cityLisy[i][0] + '">' + cityLisy[i][1] + '</option>';
    }
    $("#citySelectElement").html(html);
}

三、radio元素操作

1、設定選中radio

<form action="">
    <span><input type="radio" name="sex" value="M" checked="true">男</span>
    <span><input type="radio" name="sex" value="F">女</span>
</form>

<button id="btnTest">選擇男</button>
<button id="btnTest1">選擇女</button>
<script>
    $(function () {

        $('input:radio[name="sex"]').change(function () {
            var val = $('input:radio[name="sex"]:checked').val();
            if (val == null) {
                alert("什麼也沒選中!");
                return false;
            } else {
                alert(val);
            }
        });

        $("#btnTest").click(function () {
            setRadioChecked("sex", "M", true);
            // var val = $('input:radio[name="radios"]:checked').val();
            // if (val == null) {
            //     alert("什麼也沒選中!");
            //     return false;
            // } else {
            //     alert(val);
            // }
        });
        $("#btnTest1").click(function () {
            setRadioChecked("sex", "F", true);
        });
    });

    /**
     * 設定選中單選按鈕
     * @param value
     */
    function setRadioChecked(name, checkedValue, checked) {
        var radios = document.getElementsByName(name);
        for (var i = 0; i < radios.length; i++) {
            if (radios[i].value == checkedValue) {
                radios[i].checked = checked;
                break;
            }
        }
        // var radio = $("input:radio[value="+value+"]");
        // if(radio){
        //     //選中單選按鈕
        //     radio.prop("checked",true);
        // }
    }

</script>

2、單選按鈕change事件

<form action="">
    <input type="radio" name="radios" value="a" checked="true">單選按鈕1
    <input type="radio" name="radios" value="b">單選按鈕2
    <input type="radio" name="radios" value="c">單選按鈕3
</form>

<button id="btnTest">測試</button>

<script>
    $(function () {

        $('input:radio[name="radios"]').change(function () {
            var val = $('input:radio[name="radios"]:checked').val();
            if (val == null) {
                alert("什麼也沒選中!");
                return false;
            } else {
                alert(val);
            }
        });

        $("#btnTest").click(function () {

            var val = $('input:radio[name="radios"]:checked').val();
            if (val == null) {
                alert("什麼也沒選中!");
                return false;
            } else {
                alert(val);
            }
        });
    });
</script>

四、checkbox元素操作

1、設定選中checkbox

<form>
    <div>
        <span><input type="checkbox" name="interest" value="0">跑步</span>
        <span><input type="checkbox" name="interest" value="1">籃球</span>
        <span><input type="checkbox" name="interest" value="2">音樂</span>
    </div>

    <input id="btnTest" type="button" value="全選">
    <input id="btnTest1" type="button" value="全不選">
</form>
<script>
    $(function () {
        $("#btnTest").click(function () {

            var checkedValue = ["0", "1", "2"];
            for (var i = 0; i < checkedValue.length; i++) {
                setCheckbox("interest", checkedValue[i], true);
            }
        });

        $("#btnTest1").click(function () {
            var checkedValue = ["0", "1", "2"];
            for (var i = 0; i < checkedValue.length; i++) {
                setCheckbox("interest", checkedValue[i], false);
            }
        });

        /**
         * 設定checkbox
         */
        function setCheckbox(name, checkedValue, checked) {

            var checkboxs = document.getElementsByName(name);
            for (var i = 0; i < checkboxs.length; i++) {
                if (checkboxs[i].value == checkedValue) {
                    checkboxs[i].checked = checked;
                    break;
                }
            }

        }
    });
</script>

2、判斷checkbox是否選中

<form>
    <input id="checkbox" type="checkbox" value="1">三證合一
    <input id="btnTest" type="button" value="設定checkbox為不選中狀態">
    <input id="btnTest1" type="button" value="設定checkbox為不可用狀態">
</form>
<script>
    $(function () {
        $("#btnTest").click(function () {
            // 判斷checkbox是否選中(jquery 1.6以前版本 用  $(this).attr("checked"))
            alert($("#checkbox").prop("checked"));
            //設定checkbox為不選中狀態
            //$("#checkbox").attr("checked", false);
            $("#checkbox").prop("checked", false);
            //7、設定checkbox為選中狀態
            //$('input:checkbox').attr("checked", 'checked');//or
            //$('input:checkbox').attr("checked", true);
        });

        $("#btnTest1").click(function () {
            console.log("不可用");
            //$("#checkbox").attr("disabled", true);
            $("#checkbox").prop("disabled", true);

        });
    });
</script>

3、change事件

<form>
    <div>
        <input type="hidden" id="cheboxCheckedValuesElement">
        <span><input type="checkbox" onchange="checkboxOnchange(this)" name="interest" value="0">跑步</span>
        <span><input type="checkbox" onchange="checkboxOnchange(this)" name="interest" value="1">籃球</span>
        <span><input type="checkbox" onchange="checkboxOnchange(this)" name="interest" value="2">音樂</span>
    </div>
    <input id="btnTest" type="button" value="設定選中">
</form>

<script>
    $(function () {
        $("#btnTest").click(function () {

        });

    });

    function checkboxOnchange(checkboxObj) {
        var jqobj = $(checkboxObj);
        //獲取value值
        var value = jqobj.val();
        //獲取是否選中
        var checked = jqobj.prop("checked");
        //console.log("value="+value);
        //console.log("checked=" + checked);

        var cheboxCheckedValues = $("#cheboxCheckedValuesElement").val();
        if (cheboxCheckedValues.length > 0) {
            //已經記錄有值
            var arr = cheboxCheckedValues.split(";");
            if (checked == false) {
                var newValues = "";
                //取消選擇,把記錄的value值去掉
                for (var i = 0; i < arr.length - 1; i++) {
                    if (arr[i] != value) {
                        newValues += arr[i] + ";";
                    }
                }
                $("#cheboxCheckedValuesElement").val(newValues);
            } else {
                var cheboxCheckedValues = $("#cheboxCheckedValuesElement").val();
                cheboxCheckedValues += value + ";";
                $("#cheboxCheckedValuesElement").val(cheboxCheckedValues);
            }

        } else {
            cheboxCheckedValues = $("#cheboxCheckedValuesElement").val();
            cheboxCheckedValues += value + ";";
            $("#cheboxCheckedValuesElement").val(cheboxCheckedValues);
        }
        console.log("多選的value陣列:" + $("#cheboxCheckedValuesElement").val());
    }

</script>

下載地址:

相關推薦

HTML常用元素操作

在Web開發中,要經常操作表單元素,如input輸入框,select下拉選擇框,radio單選按鈕,checkbox複選框等。下面,我就總結一下自己常用的操作這些元素的JS程式碼。 一、input元素操作 1、獲取input輸入值 <div> <

html--form常用操作

form表單 用於收集使用者資訊,如:登入、註冊等場景;所有要提交的資料都必須放在form標籤中<form action=" "  method=" ">   action:提交地址、動作,與input標籤中typy標籤的submit屬性相關聯。  <inp

jQuery操作Form元素

selected 中文 table find fadein spa dsm 字符串 獲取 Web開發中常常須要操作表單,form表單元素有select、checkbox、radio、textarea、button、file、text、hidden、pas

HTML——form常用標簽總結

radio led ext only pin sta word htm and 1 <form action="" method="get"> 2 <!-- 3 placeholder="請輸

獲得元素html內容 及 元素狀態(即使用者輸入或者選中的內容)

//獲得元素html內容.如果process為true時,獲得html及表單元素狀態(即使用者輸入或者選中的內容) function getHtml(selecter,process) { var ele = $(selecter); if (window.A

html元素介紹

單選按鈕radio <!-- 單選按鈕--> 性別: <input type="radio" name="group1" value="boy" />男 <input type = radio name = "group1" value

HTML元素

表單 一、表單的語法: 1.提交方式: get:不安全,位址列裡面有提交內容 post:相對安全,位址列裡面不顯示提交的內容 2.提交按鈕:submit 3.重置按鈕:reset 4.input中常用的屬性: 1)type:表示表單元素的型別,常

HTML 元素(中)

type屬性總彙 type屬性解析 一、type屬性總彙 input元素可以用來生成一個供使用者輸入資料的簡單文字框。在預設的情況下,什麼樣的資料均可以輸入。而通過不通的屬性值,可以限制輸入的內容。

HTML 元素(下)

其他元素 輸入驗證 一、其他元素 元素名稱 說明 select

HTML的筆記及展示(2)(元素、input元素、label、button以及HTML5新增的一些元素

一、HTML原有的表單與表單控制元件 1.****<form…/>元素用於生成輸入表單,該元素不會生成視覺化部分。如單行文字框、多行文字框、單選按鈕、複選框等都需要放在<form…/>元素內 form元素的重要屬性: action:指定當單擊表單內的"確認"按鈕時

jQuery獲取,遍歷和操作元素Select,checkbox,radio

jQuery獲取Select選擇的Text和Value: 語法解釋: 1. $("#select_id").change(function(){//code...});   //為Select新增事件,當選擇其中一項時觸發 2. var checkText=$("#sel

html,基礎''操作

<!-- 表單操作 --> <form method="傳送方式" action="伺服器檔案"> <!-- 所有的表單操作都應該在其中,不然無法上傳伺服器 --&

html 元素

<iframe src="http://www.jb51.net"style="width: 100%"> 指令碼檔案,頭標題 </iframe> 可以實現下拉,相當於一個小型的網頁,限制在一個固定大小的框裡面  <!-- act

jQuery對元素的取值和賦值操作

元素 Language details code name edi pre js xml ttr 好久沒用過jquery了,很多東西都陌生了,還是應該多練啊。 jQuery讀取input元素的值: 用戶名:<input type="text" name="usern

HTML form新增元素

相信大家對html中表單不陌生吧,下面我們來聊一下在H5裡面表單新增的元素和廢棄元素。 4表單相關新增元素和屬性 4.1表單元素新增和廢棄的屬性  表單新增的屬性可以分成2類: 提交類:提交給伺服器設

HTML操作

HTML中表單標籤用於將資料提交給伺服器,其跟標籤為,常用屬性有:action:指定提交資料的地址,method:指定表單的提交方式(提交方式有預設get方法,該方法提交資料時資料會在位址列顯示不安全且提交的資料大小不能超過1KB,post提交方式不會將資料內容

html元素 —— 元素及實用屬性

一、常用表單元素 <form>:定義供使用者輸入的表單。 <fieldset>:定義域。即輸入區加有文字的邊框。 <legend>:定義域的標題,即邊框上的文字。 <label>:定義一個控制的標籤。如輸入框前的文字,用以關聯

關於元素的name及HTML中的id

txt 老師 inner mage 新的 調用 target col type 這種在上高級WEB課時,老師為表單元素賦了name值,之後直接在JS中使用該值而不需要使用document.get...來獲取了,例: <!DOCTYPE html> <

基於JQuery實現元素值的回寫

spl sel || etc oos min javascrip odi tar form.jsp: <%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> <!DO

javascript中的常用事件用法

round onload tel logs () case span onsubmit change 下面介紹幾種javascript中常用的表單事件; 一,onsubmit:表單中的確認按鈕被點擊時發生的事件,如下案例。 案例解析:彈出表單中提交的內容