欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery實(shí)現(xiàn)獲取form表單內(nèi)容及綁定數(shù)據(jù)到form表單操作分析

 更新時(shí)間:2018年07月03日 10:24:02   作者:CangoWu  
這篇文章主要介紹了jQuery實(shí)現(xiàn)獲取form表單內(nèi)容及綁定數(shù)據(jù)到form表單操作,結(jié)合jQuery封裝插件操作分析了jQuery針對(duì)form表單的serializeJson數(shù)據(jù)獲取及setForm數(shù)據(jù)綁定相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了jQuery實(shí)現(xiàn)獲取form表單內(nèi)容及綁定數(shù)據(jù)到form表單操作。分享給大家供大家參考,具體如下:

在日常開(kāi)發(fā)的過(guò)程中,難免會(huì)用到form表單,我們需要獲取表單的數(shù)據(jù)保存到數(shù)據(jù)庫(kù),或者拿到后臺(tái)的一串json數(shù)據(jù),要將數(shù)據(jù)綁定到form表單上,這里我寫(xiě)了一個(gè)基于jquery的,formHelp插件,使用起來(lái)也很簡(jiǎn)單:

獲取表單的數(shù)據(jù):$("#formid").serializeJson();

綁定數(shù)據(jù)到表單:$("#formid").setForm(json);

jquery.formHelp.js插件

/**
 * 將form里面的內(nèi)容序列化成json
 * 相同的checkbox用分號(hào)拼接起來(lái)
 * @param {dom} 指定的選擇器
 * @param {obj} 需要拼接在后面的json對(duì)象
 * @method serializeJson
 * */
$.fn.serializeJson=function(otherString){
  var serializeObj={},
    array=this.serializeArray();
  $(array).each(function(){
    if(serializeObj[this.name]){
      serializeObj[this.name]+=';'+this.value;
    }else{
      serializeObj[this.name]=this.value;
    }
  });
  if(otherString!=undefined){
    var otherArray = otherString.split(';');
    $(otherArray).each(function(){
      var otherSplitArray = this.split(':');
      serializeObj[otherSplitArray[0]]=otherSplitArray[1];
    });
  }
  return serializeObj;
};
/**
 * 將josn對(duì)象賦值給form
 * @param {dom} 指定的選擇器
 * @param {obj} 需要給form賦值的json對(duì)象
 * @method serializeJson
 * */
$.fn.setForm = function(jsonValue){
  var obj = this;
  $.each(jsonValue,function(name,ival){
    var $oinput = obj.find("input[name="+name+"]");
    if($oinput.attr("type")=="checkbox"){
      if(ival !== null){
        var checkboxObj = $("[name="+name+"]");
        var checkArray = ival.split(";");
        for(var i=0;i<checkboxObj.length;i++){
          for(var j=0;j<checkArray.length;j++){
            if(checkboxObj[i].value == checkArray[j]){
              checkboxObj[i].click();
            }
          }
        }
      }
    }
    else if($oinput.attr("type")=="radio"){
      $oinput.each(function(){
        var radioObj = $("[name="+name+"]");
        for(var i=0;i<radioObj.length;i++){
          if(radioObj[i].value == ival){
            radioObj[i].click();
          }
        }
      });
    }
    else if($oinput.attr("type")=="textarea"){
      obj.find("[name="+name+"]").html(ival);
    }
    else{
      obj.find("[name="+name+"]").val(ival);
    }
  })
}

html測(cè)試代碼

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title>jQueryFormHelp練習(xí)</title>
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>
  <script src="jquery.formHelp.js"></script>
  <script type="text/javascript">
  $(function () {
    $("#form").setForm({a: '張三家的附近可考慮將', b: '王五', c: '王五', d: 'nishi yaldjlkfjal ',e:7,f:'8;10',i:'王'});
  });
  function submitForm(){
    console.log($("#form").serializeJson('id:12;name:13;'));
  }
</script>
</head>
<body>
<form id="form">
  <div><input type="text" name="a" /></div>
  <div><input type="text" name="b" id="b" /></div>
  <div><input type="hidden" name="c" id="c" /></div>
  <div>
    <textarea name="d" rows="8" cols="40"></textarea>
    <input type="checkbox" name="f" value="10"/>
  </div>
  <div><select name="e">
    <option value="5" selected="selected">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
  </select></div>
  <div>
    <input type="checkbox" name="f" value="8" />
    <input type="checkbox" name="f" value="9"/>
  </div>
  <div>
    <input name="i" type="radio" value="王" />王
    <input name="i" type="radio" value="小" />小
  </div>
  <div>
    <input type="button" name="g" value="Submit" id="g" onclick="submitForm()"/>
  </div>
</form>
</body>
</html>

使用在線HTML/CSS/JavaScript代碼運(yùn)行工具 http://tools.jb51.net/code/HtmlJsRun測(cè)試運(yùn)行效果如下:

更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery form操作技巧匯總》、《jQuery操作json數(shù)據(jù)技巧匯總》、《jQuery常用插件及用法總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery表格(table)操作技巧匯總》及《jquery選擇器用法總結(jié)

希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • jQuery 查找元素操作實(shí)例小結(jié)

    jQuery 查找元素操作實(shí)例小結(jié)

    這篇文章主要介紹了jQuery 查找元素操作,結(jié)合實(shí)例形式總結(jié)分析了jQuery針對(duì)頁(yè)面元素的各種常見(jiàn)查找操作實(shí)現(xiàn)方法,需要的朋友可以參考下
    2019-10-10
  • jQuery實(shí)現(xiàn)點(diǎn)擊后標(biāo)記當(dāng)前菜單位置(背景高亮菜單)效果

    jQuery實(shí)現(xiàn)點(diǎn)擊后標(biāo)記當(dāng)前菜單位置(背景高亮菜單)效果

    這篇文章主要介紹了jQuery實(shí)現(xiàn)點(diǎn)擊后標(biāo)記當(dāng)前菜單位置(背景高亮菜單)效果,涉及jquery鼠標(biāo)點(diǎn)擊事件及鏈?zhǔn)讲僮骺刂圃貥邮絼?dòng)態(tài)變換的技巧,需要的朋友可以參考下
    2015-08-08
  • 基于jquery實(shí)現(xiàn)彈幕效果

    基于jquery實(shí)現(xiàn)彈幕效果

    這篇文章主要為大家詳細(xì)介紹了基于jquery實(shí)現(xiàn)彈幕效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • jquery 遍歷hash操作示例【基于ajax交互】

    jquery 遍歷hash操作示例【基于ajax交互】

    這篇文章主要介紹了jquery 遍歷hash操作,結(jié)合實(shí)例形式分析了jQuery基于ajax交互獲取并遍歷hash相關(guān)操作技巧,需要的朋友可以參考下
    2019-10-10
  • 前端分頁(yè)功能的實(shí)現(xiàn)以及原理(jQuery)

    前端分頁(yè)功能的實(shí)現(xiàn)以及原理(jQuery)

    本文主要介紹了基于jQuery實(shí)現(xiàn)的前端分頁(yè)功能,并分析了其實(shí)現(xiàn)原理。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • jQuery在html有效在jsp無(wú)效的原因及解決方法

    jQuery在html有效在jsp無(wú)效的原因及解決方法

    最近用jQuery來(lái)寫(xiě)下拉框的選項(xiàng)值的左右移動(dòng),放到j(luò)sp里面就不能用了,經(jīng)過(guò)測(cè)試終于找到了解決方法在此與大家分享下
    2013-08-08
  • jquery中有哪些api jQuery主要API

    jquery中有哪些api jQuery主要API

    jquery有很多的API事件,本文小編給大家整理了jquery中最主要的API函數(shù)集合。
    2017-11-11
  • jQuery實(shí)現(xiàn)的簡(jiǎn)單圖片輪播效果完整示例

    jQuery實(shí)現(xiàn)的簡(jiǎn)單圖片輪播效果完整示例

    這篇文章主要介紹了jQuery實(shí)現(xiàn)的簡(jiǎn)單圖片輪播效果,結(jié)合完整實(shí)例形式分析了jQuery結(jié)合時(shí)間函數(shù)與隨機(jī)數(shù)運(yùn)算操作頁(yè)面元素動(dòng)態(tài)變換相關(guān)實(shí)現(xiàn)技巧,具有不動(dòng)方向滑動(dòng)、淡入淡出等切換效果,代碼非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2018-02-02
  • 原創(chuàng)jQuery彈出層插件分享

    原創(chuàng)jQuery彈出層插件分享

    我們?cè)谇岸碎_(kāi)發(fā),經(jīng)常要用到彈出層的效果,以前很早前就想將這個(gè)功能整理成一個(gè)公共的接口來(lái)實(shí)現(xiàn)了;自寫(xiě)的第一個(gè)jQuery插件,這里分享給大家,有需要的小伙伴參考下。
    2015-04-04
  • jquery鼠標(biāo)放上去顯示懸浮層即彈出定位的div層

    jquery鼠標(biāo)放上去顯示懸浮層即彈出定位的div層

    這篇文章主要介紹了使用jquery實(shí)現(xiàn)的鼠標(biāo)放上去顯示懸浮層即彈出定位的div層,需要的朋友可以參考下
    2014-04-04

最新評(píng)論