最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript表單序列化原理及實(shí)現(xiàn)代碼詳解

 更新時間:2020年10月30日 09:28:37   作者:Terre  
這篇文章主要介紹了Javascript表單序列化原理及實(shí)現(xiàn)代碼詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

隨著 Ajax 的出現(xiàn),表單序列化已經(jīng)成為一種常見需求。在 JavaScript 中,可 以利用表單字段的 type 屬性,連同 name 和 value 屬性一起實(shí)現(xiàn)對表單的序列化。在編寫代碼之前, 有必須先搞清楚在表單提交期間,瀏覽器是怎樣將數(shù)據(jù)發(fā)送給服務(wù)器的。

​1. 對表單字段的名稱和值進(jìn)行 URL 編碼,使用和號(&)分隔。

2. 不發(fā)送禁用的表單字段。

3. 只發(fā)送勾選的復(fù)選框和單選按鈕。

4. 不發(fā)送 type 為"reset"和"button"的按鈕。

5. 多選選擇框中的每個選中的值單獨(dú)一個條目。

6. 在單擊提交按鈕提交表單的情況下,也會發(fā)送提交按鈕;否則,不發(fā)送提交按鈕。

7. <select>元素的值,就是選中的<option>元素的 value 特性的值。如果<option>元素沒有 value 特性,則是<option>元素的文本值。

在表單序列化過程中,一般不包含任何按鈕字段,因?yàn)榻Y(jié)果字符串很可能是通過其他方式提交的。除此之外的其他上述規(guī)則都應(yīng)該遵循。

基本的表單序列化可以通過遍歷表單元素實(shí)現(xiàn),實(shí)例代碼如下:

function serialize(form){
 var params = [];
 var eles = form.elements;
 
 for (var i = 0;i<ele.length;i++){
  let field = ele[i];
  switch(field.type){
   case "file": 
   case "submit":
   case "reset": 
   case "button":
    break;
   case "radio":
   case "checkbox":
    if(!field.checked){
     break;
    }
    default:
     //不包含沒有名字的表單字段 
     if (field.name.length){ 
      parts.push(encodeURIComponent(field.name) + "=" + 
      encodeURIComponent(field.value)); 
     }
  }
 }
  return parts.join("&");
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Javascript 模擬mvc實(shí)現(xiàn)點(diǎn)餐程序案例詳解

    Javascript 模擬mvc實(shí)現(xiàn)點(diǎn)餐程序案例詳解

    這篇文章主要介紹了Javascript 模擬mvc實(shí)現(xiàn)點(diǎn)餐程序案例詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 微信小程序列表時間戳轉(zhuǎn)換實(shí)現(xiàn)過程解析

    微信小程序列表時間戳轉(zhuǎn)換實(shí)現(xiàn)過程解析

    這篇文章主要介紹了微信小程序列表時間戳轉(zhuǎn)換實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • js根據(jù)當(dāng)前日期獲取前一周或者后一周等日期

    js根據(jù)當(dāng)前日期獲取前一周或者后一周等日期

    有的時候要獲取當(dāng)前日期,或者前一天、后一天的日期,下面這篇文章主要給大家介紹了關(guān)于js根據(jù)當(dāng)前日期獲取前一周或者后一周等日期的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-04-04
  • 最新評論

    齐河县| 南和县| 玉树县| 沙河市| 吐鲁番市| 清流县| 竹溪县| 襄汾县| 玛曲县| 富源县| 大新县| 清丰县| 华坪县| 广东省| 梅河口市| 迁西县| 密山市| 临城县| 南陵县| 京山县| 通渭县| 北辰区| 淮南市| 龙岩市| 红原县| 武定县| 类乌齐县| 乐清市| 桦川县| 河间市| 徐州市| 昌宁县| 陵川县| 江都市| 顺义区| 丹巴县| 南通市| 城固县| 东阿县| 榆林市| 延寿县|