通常情况下我们会获取所选取行对象的ID,通过循环及简单封装拼凑成一个长String传送过去,并在Service层解释再通过findByID获取实例并update

但今次我们需要将整个对象群完">

ホームページ  >  記事  >  ウェブフロントエンド  >  JSのArrayオブジェクトの配列をJSON形式のバックグラウンドに渡す方法_javascriptスキル

JSのArrayオブジェクトの配列をJSON形式のバックグラウンドに渡す方法_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 17:05:181023ブラウズ

ビジネスでは、フロントエンドの jQuery easyUI DataGrid リストで選択された複数の行のデータを更新操作のためにバックグラウンドに転送する必要があります
JSのArrayオブジェクトの配列をJSON形式のバックグラウンドに渡す方法_javascriptスキル

通常、選択された行オブジェクトの ID は次の方法で取得します。ループ そしてそれを長い String にカプセル化してサービス層に送信し、findByID を使用してインスタンスを取得して更新します

しかし、今回はオブジェクト グループ全体をバックグラウンドに完全に送信する必要があります

構造は次のとおりです
JSのArrayオブジェクトの配列をJSON形式のバックグラウンドに渡す方法_javascriptスキル

Google の GSON プラグインと json2.js を併用します

フロントエンドのコードは次のとおりです。わかりやすくするために、確認コードは削除されています:

コードをコピー コードは次のとおりです:

var rows = $('#dg1').datagrid('getSelections');
$.ajax({
キャッシュ : false,
タイプ : "POST",
url : _basePath '/sectionGroup/pair',
data : {rows : JSON.stringify(rows ), group_id : group_id, group_name : group_name},
success : function(data) {
if(data.success = = true){
$.messager.confirm('構成が成功しました','リストを更新しますか? ', function(r){
if (r){
$('#dg'). datagrid('reload');
$('#dg1').datagrid('reload');
$('#dg2').datagrid('reload'); });
}else{
$.messager.show({
title:'プロンプト',msg:'構成に失敗しました',
showType:'fade',style:{right:' ',bottom:''}
});
}
}
このページでは json2.js

を導入する必要がありますバックグラウンド コントローラーは以下を受け取ります:



コードをコピーします
コードは次のとおりです: @ RequestMapping(value = "/pair") @ResponseBody public ResponseData ペア(String rows, String group_name , String group_id, HttpServletRequest request) {
User user = (User) SecurityContextUtil.getCurrentUser(); 🎜>if (user == null) {
user = (User) request.getSession().getAttribute(Constants.USER_OS);
}
Gson = new Gson(); ;SectionGroup> list = gson.fromJson(rows, new TypeToken>() {}.getType ());
for (SectionGroup sectionGroup : list) {
sectionGroup.setRegion(user. getRegion_id());
sectionGroup.setCompany_id(user.getOrg_id());
sectionGroup.setGroup_name(group_name);
}
return ResponseData.SUCCESS_NO_DATA;
}


GSON と TypeToken は GSON パッケージで導入されたクラスです

入力パラメータの行は String である必要がありますtype

Gson 変換後も、List は通常のインターフェイスのままで、フロントエンドの完全な Object オブジェクトが内部的にロードされます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。