1. 程式人生 > >js陣列傳值 到後臺處理(json)

js陣列傳值 到後臺處理(json)

在專案中遇到要在前臺傳陣列到後臺去,如果一直用string拼接的話,就感覺有點沒那麼好用,就想到用傳陣列。我的處理方式是先將要傳的值儲存陣列,然後由陣列轉成JSON格式傳到後臺。
1、js 程式碼:
var table = document.getElementById("gtable");     
var obj = "";
     var array = new Array();
     for(var i = 1;i<=9;i++){
         if(table.rows.cells[1].innerHTML != "" && table.rows.cells[1].innerHTML!=" "){
             obj = new Object();
             obj.num = table.rows.cells[0].innerHTML;
             obj.candidate = table.rows.cells[1].innerHTML;
             array.push(obj);
         }
     }

這是獲取整個表格裡面的值。
傳值 通過:textInfo:encodeURIComponent(JSON.stringify(array))encodeURIComponent轉碼,以防止中文到後臺變成亂碼。
最重要的是JSON.stringify(array)這是將陣列轉成JSON格式的寫法。要先匯入json2.js,通過https://github.com/douglascrockford/JSON-js/blob/master/json2.js 。
2、java程式碼
Object[] list = JSONUtils.getStringArray4Json(URLDecoder.decode(request.getParameter("textInfo"),"UTF-8")));textInfo是前臺轉過來的變數。
    JSONUtils.getStringArray4Json方法:
/** *//**
     * 從json陣列中解析出java字串陣列
     * @param jsonString
     * @return
     */
    public static String[] getStringArray4Json(String jsonString){
        
        JSONArray jsonArray = JSONArray.fromObject(jsonString);
        String[] stringArray = new String[jsonArray.size()];
        for( int i = 0 ; i<jsonArray.size() ; i++ ){
            stringArray = jsonArray.getString(i);
            
        }
        
        return stringArray;
    }

後臺處理先轉成Object陣列物件,然後遍歷陣列list
for (int j = 0; j < list.length; j++) {
                String textInfo = list[j].toString();
                Map textInfoMap = JSONUtils.getMap4Json(textInfo);
                String answerId = textInfoMap.get("num").toString();
                String cdate=textInfoMap.get("candidate ").toString(); 
               System.out.println(answerId+","+cdate );
            }

這樣就可以得到前臺傳過來的陣列的每個值了。這個方法也是參考別人寫的,學習別人的,詳細記錄一下,免得以後自己忘記了

相關推薦

js陣列後臺處理json

在專案中遇到要在前臺傳陣列到後臺去,如果一直用string拼接的話,就感覺有點沒那麼好用,就想到用傳陣列。我的處理方式是先將要傳的值儲存陣列,然後由陣列轉成JSON格式傳到後臺。 1、js 程式碼:v

layui框架檔案上 + TP3.2.3 檔案上後臺處理php

layui框架是1.0.9版本。。首先html頁面程式碼如下: <div class="layui-form-item" id="upload_file">

開源網站流量統計系統Piwik原始碼分析——後臺處理

  在第一篇文章中,重點介紹了指令碼需要蒐集的資料,而本篇主要介紹的是伺服器端如何處理客戶端傳送過來的請求和引數。 一、裝置資訊檢測   通過分析User-Agent請求首部(如下圖紅線框出的部分),可以得到相關的裝置資訊。     Piwik系統專門有一套程式碼用來分析代理資訊,還獨立了出來,叫做。

多因子模型之因子訊號測試平臺----因子處理

在前面一節,我們成功計算出來了因子值。 在開始今天的內容前,我們要先了解幾個概念。許多書本上,可能不會這樣講,這個僅僅是筆者的一些感悟。 0.幾種factor         先來弄清楚筆者自己總結的

js陣列排序兩種寫法冒泡

js實現陣列的排序方法(sort方法) var arrObj = new Array (1,8,7,6); arrObj.sort(); console.log(arrObj.join(",")) 如

HTML5+js頁面給Java後臺的小技巧

頁面傳值 bsp 發送 設置 這樣的 htm html5 分享 .com 頁面傳值小技巧

js後臺中文亂碼解決

ddr ntb tel code 中文亂碼 gpo 亂碼 nco java JS部分: var faultAddr = encodeURI(document.getElementById("faultAddr").value); faultAddr = en

springMVC+ajax+json進行出現415Unsupported Media Type錯誤

參考這篇文章已經將可能出現的問題都說明白了,我這邊解決的問題是jar包匯入的問題,在這記錄一下。 @ResponseBody將前端傳過來的字串引數賦值給controller方法中的字串變數,或者框架使用下邊包中類進行解析物件然後返回json物件到前端。 <dependency>

js 陣列元素屬性不一致 實現平均分歡迎支援別樣簡單解法

舉例:let resArr = [{'name':'p1',scores:[{'a1':15},{'a2':25},{'a3':38},{'a4':45},{'a5':51},{'a6':63},{'a7':73},{'a8':81},{'a9':29},{'a10':10}]},{'name':'

Flex JS 互動 引數

老生常談的話題了。 首先是轉帖部分: 先來看Flex呼叫JavaScript中的函式FlexConnectJavaScript.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Application

mvc ---- ajax 提交過來的Json格式如何處理解析

soft sta mvc custom alt 提交 urn ima blog 前臺傳過來的不是一個對象,而是一個Json字符串怎麽辦 ? 如: {"fids":"2323","contents":"<p>lsdfjlsdjflsdf</p>

js url中文亂碼完美解決(JAVA)

div AR urldecode 更改 pos decode post 中文 解決亂碼 首先在你的jsp頁面這樣更改: var url="你要傳入的Action的位置&ipid="+ipid+"&keyWord="+key; 這裏的key是中文,從inp

KindEditor的簡單使用,以及上圖片預覽圖片,用戶刪除圖片後的數據處理重點

思路 回復 func gif datetime lds comm upload media http://www.cnblogs.com/wupeiqi/articles/6307554.html 簡單使用: <div class="comm">

Vue.js給子部件及觸發動作的問題

computed ops .... flag null spa code 經驗 觸發 最近研究一個用vue.js做的程序並修改增加功能。其中用到傳值給子部件等問題。 template中有個子部件: <template> ...... <child

ASP.NET MVC 實現頁落網資源分享網站+充管理+後臺管理1之資料庫設計

    本文主要講解本專案網站所應用到的知識點,及資料庫的相關設計: 一、知識點     (1)本專案主要採取ASP.NET MVC的程式設計模式,相信你已經瞭解到了MVC的具體含義是什麼,這裡不再贅述,有不瞭解的朋友,可以先

ASP.NET MVC 實現頁落網資源分享網站+充管理+後臺管理7之擴充套件基類和區域建立以及文字編輯配置

    一、擴充套件基類和區域建立     (1)在應用之前,我們先在表現層建立一個公共的系統擴充套件檔案來(SystemExtension)存放我們需要延伸和擴充套件的方法類。     在常規的專案系統操作中,我們都需要用到

python:爬蟲爬取資料的處理Json字串的處理2

#Json字串的處理 Json字串轉化為Python資料型別 import json JsonStr ='{"name":"sunck","age":"18","hobby":["money","power","English"],"parames":{"a":1,"b":2}}' Js

c語言數字影象處理:閾處理

定義 全域性閾值處理 假設某一副灰度圖有如下的直方圖,該影象由暗色背景下的較亮物體組成,從背景中提取這一物體時,將閾值T作為分割點,分割後的影象g(x, y)由下述公式給出,稱為全域性閾值處理   多閾值處理 本文僅完成全域性閾值處理的演算法實現 基本全域性閾值處理方法

fetch 使用,如何能夠接收JS

fetch 使用,如何能夠接收JS的傳值 使用fetch基本方式: fetch('https://mywebsite.com/endpoint/', { method: 'POST', headers: { 'Accept': 'application/json'

Python3+OpenCV3影象處理—— 影象二

簡介:影象二值化就是將影象上的畫素點的灰度值設定為0或255,也就是將整個影象呈現出明顯的黑白效果的過程。 一、普通影象二值化 程式碼如下: import cv2 as cv import numpy as np #全域性閾值 def threshold_demo