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

jquery.form.js異步提交表單詳解

 更新時間:2017年04月25日 10:26:46   作者:陽光秋天  
這篇文章主要為大家詳細(xì)介紹了jquery.form.js異步提交表單的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了jquery.form.js異步提交表單的具體代碼,供大家參考,具體內(nèi)容如下

引入腳本:

<script type="text/javascript" src="/js/jquery.form.min.js"></script>
<script src="/js/json2.js"></script>
//前端代碼:
<form id="f1">
  <span class="btn-upload form-group">
   <input class="input-text upload-url radius" type="text" name="uploadfile-1" id="uploadfile-1" readonly><a href="javascript:void();" rel="external nofollow" class="btn btn-primary radius"><i class="iconfont">&#xf0020;</i> 瀏覽文件</a>
   <input type="file" multiple name="file-1" class="input-file">
  </span>
  <input type="button" class="btn btn-warning radius mt-10 f-l mr-10" onclick="ImportData(this)" value="保存"/>
  <a href="/files/企業(yè)表.xls" rel="external nofollow" target="_blank" class="f-16 l-30 mt-10 f-l c-danger">下載范例</a>
  <div class="clearfix"></div>
 </form>


//提交表單
  $("#f1").ajaxSubmit({
   url: "/ImportAndCheck/ImportCompanyOperation/",
   type: "post",
   enctype: "multipart/form-data",
   dataType: "html",
   beforeSubmit: function () {
    $(obj).val("保存中...").attr("disabled", true);
   },
   success: function (response) {
    try {
     data = JSON.parse(response);
     if (data.code > 0) {
      layer.msg(data.msg, { time: 1000 });
      setTimeout(function () {
       window.location.href = "/ImportAndCheck/ImportCompany?status=0";
      }, 1000);
     } else {
      layer.msg(data.msg, { time: 1000 });
      $(obj).val("保存").attr("disabled", false);
     }
    } catch (err) {
     layer.msg("導(dǎo)入失??!", { time: 1000 });
     $(obj).val("保存").attr("disabled", false);
    }

   },
   error: function (XmlHttpRequest, textStatus, errorThrown) {
    layer.msg("導(dǎo)入失敗", { time: 1000 });
    $(obj).val("保存").attr("disabled", false);
   }
  });

//服務(wù)端
HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
 ReturnJsonCode jsonCode = new ReturnJsonCode();
   if (files == null || files.Count == 0)
   {
    jsonCode.msg = "請選擇上傳的導(dǎo)入文件";
    return jsonCode;
   }
   //驗證文件類型
   if (files != null && files.Count > 0)
   {
    HttpPostedFile file = null;
    file = files[0];
    //擴(kuò)展名檢查
    string picext = System.IO.Path.GetExtension(file.FileName).ToLower();
    if (picext != ".xls")
    {
     jsonCode.msg = "上傳文件僅支持xls文檔格式";
     return jsonCode;
    }

    DataTable db = ExcelToDataTable(file, file.FileName, 0);
    int failcount = 0;
    int successcount = 0;
    if (db != null && db.Rows.Count > 0)
    {
     foreach (DataRow dr in db.Rows)
     {
      string mobile = dr["手機(jī)號碼"].ToString().Trim();
      string truename = dr["姓名"].ToString().Trim();
      string iskejizhuanyuan = dr["科技專員"].ToString().Trim();
      string sex = dr["性別"].ToString().Trim();

/// <summary>
 /// Excel文件導(dǎo)成Datatable
 /// </summary>
 /// <param name="strFilePath">Excel文件目錄地址</param>
 /// <param name="strTableName">Datatable表名</param>
 /// <param name="iSheetIndex">Excel sheet index</param>
 /// <returns></returns>
 public static DataTable ExcelToDataTable(string strFilePath, string strTableName, int iSheetIndex)
 {
  var strExtName = Path.GetExtension(strFilePath);

  var dt = new DataTable();
  if (!string.IsNullOrEmpty(strTableName))
  {
  dt.TableName = strTableName;
  }

  if (strExtName.Equals(".xls"))
  {
  using (var file = new FileStream(strFilePath, FileMode.Open, FileAccess.Read))
  {
   var workbook = new HSSFWorkbook(file);
   var sheet = workbook.GetSheetAt(iSheetIndex);

   //列頭
   foreach (var item in sheet.GetRow(sheet.FirstRowNum).Cells)
   {
   dt.Columns.Add(item.ToString(), typeof(string));
   }

   //寫入內(nèi)容
   var rows = sheet.GetRowEnumerator();
   while (rows.MoveNext())
   {
   IRow row = (HSSFRow)rows.Current;
   if (row.RowNum == sheet.FirstRowNum)
   {
    continue;
   }

   var dr = dt.NewRow();
   foreach (var item in row.Cells)
   {
    switch (item.CellType)
    {
    case CellType.Boolean:
     dr[item.ColumnIndex] = item.BooleanCellValue;
     break;
    case CellType.Error:
     dr[item.ColumnIndex] = ErrorEval.GetText(item.ErrorCellValue);
     break;
    case CellType.Formula:
     switch (item.CachedFormulaResultType)
     {
     case CellType.Boolean:
      dr[item.ColumnIndex] = item.BooleanCellValue;
      break;
     case CellType.Error:
      dr[item.ColumnIndex] = ErrorEval.GetText(item.ErrorCellValue);
      break;
     case CellType.Numeric:
      if (DateUtil.IsCellDateFormatted(item))
      {
      dr[item.ColumnIndex] = item.DateCellValue.ToString("yyyy-MM-dd hh:MM:ss");
      }
      else
      {
      dr[item.ColumnIndex] = item.NumericCellValue;
      }
      break;
     case CellType.String:
      var str = item.StringCellValue;
      if (!string.IsNullOrEmpty(str))
      {
      dr[item.ColumnIndex] = str;
      }
      else
      {
      dr[item.ColumnIndex] = null;
      }
      break;
     case CellType.Unknown:
     case CellType.Blank:
     default:
      dr[item.ColumnIndex] = string.Empty;
      break;
     }
     break;
    case CellType.Numeric:
     if (DateUtil.IsCellDateFormatted(item))
     {
     dr[item.ColumnIndex] = item.DateCellValue.ToString("yyyy-MM-dd hh:MM:ss");
     }
     else
     {
     dr[item.ColumnIndex] = item.NumericCellValue;
     }
     break;
    case CellType.String:
     var strValue = item.StringCellValue;
     if (!string.IsNullOrEmpty(strValue))
     {
     dr[item.ColumnIndex] = strValue;
     }
     else
     {
     dr[item.ColumnIndex] = null;
     }
     break;
    case CellType.Unknown:
    case CellType.Blank:
    default:
     dr[item.ColumnIndex] = string.Empty;
     break;
    }
   }
   dt.Rows.Add(dr);
   }
  }
  }
  return dt;
 }

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

相關(guān)文章

  • jQuery動態(tài)效果顯示人物結(jié)構(gòu)關(guān)系圖的方法

    jQuery動態(tài)效果顯示人物結(jié)構(gòu)關(guān)系圖的方法

    這篇文章主要介紹了jQuery動態(tài)效果顯示人物結(jié)構(gòu)關(guān)系圖的方法,涉及jQuery操作json結(jié)構(gòu)數(shù)據(jù)及鼠標(biāo)事件的技巧,需要的朋友可以參考下
    2015-05-05
  • jQuery網(wǎng)頁選項卡插件rTabs用法實例分析

    jQuery網(wǎng)頁選項卡插件rTabs用法實例分析

    這篇文章主要介紹了jQuery網(wǎng)頁選項卡插件rTabs用法,較為詳細(xì)的分析了jquery選項卡插件rTabs的定義、實現(xiàn)及使用方法,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • jQuery+ajax實現(xiàn)修改密碼驗證功能實例詳解

    jQuery+ajax實現(xiàn)修改密碼驗證功能實例詳解

    本文通過實例代碼給大家介紹了jQuery+ajax實現(xiàn)修改密碼驗證功能,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的的朋友參考下吧
    2017-07-07
  • jQuery設(shè)置圖片等比例縮小的方法

    jQuery設(shè)置圖片等比例縮小的方法

    這篇文章主要介紹了jQuery設(shè)置圖片等比例縮小的方法,涉及jQuery針對頁面元素屬性動態(tài)判定與設(shè)置相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • 新老版本juqery獲取radio對象的方法

    新老版本juqery獲取radio對象的方法

    今天換了個高版本的jquery,發(fā)現(xiàn)原先運行正常的方法報錯了,仔細(xì)搜查后得出jquery獲取radio 的方法如下
    2010-03-03
  • Jquery 常用方法經(jīng)典總結(jié)

    Jquery 常用方法經(jīng)典總結(jié)

    Jquery 常用方法,學(xué)習(xí)jquery的朋友可以參考下。
    2010-01-01
  • jQuery Ajax請求狀態(tài)管理器打包

    jQuery Ajax請求狀態(tài)管理器打包

    現(xiàn)在的網(wǎng)站,在一個網(wǎng)頁中有異步請求甚至許多個異步請求已經(jīng)不足為奇。Ajax已經(jīng)成為了現(xiàn)在網(wǎng)站必須的基本功能,使網(wǎng)頁應(yīng)用更接近于桌面應(yīng)用
    2012-05-05
  • 基于jquery實現(xiàn)日歷簽到功能

    基于jquery實現(xiàn)日歷簽到功能

    這篇文章主要介紹了基于jquery實現(xiàn)日歷簽到功能,我們在玩游戲的時候或者登錄某手機(jī)軟件時都會有一個簽到功能,記錄大家的登錄日期,這個日歷簽到如何實現(xiàn)?本文為大家進(jìn)行揭曉。
    2015-11-11
  • jquery移動listbox的值原理及代碼

    jquery移動listbox的值原理及代碼

    jQuery操作listbox原理并不難,就是將listbox中的選中項進(jìn)行移動,實現(xiàn)我們需要的移動效果,具體實例如下,感興趣的朋友可以學(xué)習(xí)下
    2013-05-05
  • JQUERY 設(shè)置SELECT選中項代碼

    JQUERY 設(shè)置SELECT選中項代碼

    本篇文章主要是對JQUERY 設(shè)置SELECT選中項的代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-02-02

最新評論

裕民县| 五家渠市| 砚山县| 塘沽区| 衡南县| 舒兰市| 兖州市| 谢通门县| 无棣县| 南昌县| 南投市| 西藏| 通州区| 当阳市| 德清县| 阳西县| 五家渠市| 德安县| 台湾省| 泰和县| 砚山县| 山东| 云林县| 如东县| 根河市| 石景山区| 滦平县| 华安县| 巴彦县| 益阳市| 绥中县| 昌平区| 甘洛县| 榆社县| 大化| 镇赉县| 龙州县| 察雅县| 托克托县| 大埔县| 宣化县|