前台如何传递json数据库,前台如何传递json数据库文件

本文目录一览:

后台json数据传到前台怎么传

假设后台传递到前台数据的临时对象为json

var

json

=

“{……}”;

json

=

eval(‘(‘

+

json

+

‘)’);

json就对前台对象了,json.endPlncre可以拿出指定属性

前台能不能给后台传这样的json数据:一个json内有个值和一个json数组 请问前台给怎么传,后台该怎么接收

你很懒。

第一步,封装json.

var jsonStr = [{‘name’:’jim’ , ‘age’:20} , {‘name’:’king’ , ‘age’:26},{‘name’:’jge’ , ‘age’:30}]

第二部,ajax。

jQuery.ajax({

type: “post”,

url: url,

dataType : ‘json’,

data : {‘mydata’:jsonStr},

success: function(data,textStatus){

alert(“操作成功”);

},error: function(xhr,status,errMsg){

alert(“操作失败!”);

}

});

第三部,后台方法接收。

String jsonStr = ServletActionContext.getRequest().getParameter(“mydata”);

JSONArray jsonArray = JSONArray.fromObject(jsonStr);

for(int i=0;ijsonArray.length(); i++){

JSONObject jsonJ = jsonArray.getJSONObject(i);

jsonJ.getInt(“name”);

jsonJ.getString(“age”);

}

…….ok不。

如何将数据以json格式传给前端

将数据以json格式传给前端:

function generateDtb() {

//写入

var txtName = document.getElementById(“txtName”).value;

//创建数组

var dtb = new Array();

//通过循环把数据写入到数组并返回

for (var i = 0; i firstGroup.length; i++) {

var row = new Object();

row.Name = txtName;

row.fullMoney = firstGroup[i].value;

row.discount = secondGroup[i].value;

dtb.push(row);

}

return dtb;

}

把数组转换成json串传入到后台:

$(function () {

//点击botton1

$(“#lbtnOK”).click(function () {

var url = “DiscountManger.aspx?ajax=1”;

var dtb = generateDtb();

// var strName = document.getElementById(“txtName”).value;

if (dtb == null)

{ }

else {

//序列化对象

var postdata = JSON.stringify(dtb);

//异步请求

$.post(url, { json: postdata }, function (json) {

if (json) {

jBox.tip(“添加成功!”, “提示”);

location.reload();

}

else {

jBox.tip(“添加失败!”, “提示”);

location.reload();

}

}, “json”)

}

});

});

在后台的操作:

首先判断是否需要传输数据

if (!IsPostBack)

{

//判断是否异步请求

if (Request.QueryString[“ajax”] == “1”)

{

ProcessRequest();

}

在这里进行对数据的处理:

/// summary

/// 处理异步请求

/// /summary

private void ProcessRequest()

{

//存入要填写的策略

ArrayList arrDiscount = new ArrayList();

Response.ContentType = “text/html”;

string json = Request.Form[“json”];

//反序列化DataTable

if (json == null)

{

return;

}

else

{

DataTable newdtb = Json2Dtb(json);

for (int i = 0; i newdtb.Rows.Count; i++)

{

Entity.StrategyDiscount enStrategyDiscount = new Entity.StrategyDiscount();

//打折方案名

enStrategyDiscount.name = newdtb.Rows[i][“Name”].ToString();

//商店ID

enStrategyDiscount.shopId = long.Parse(LoginInfo.ShopID);

enStrategyDiscount.fullMoney = Convert.ToDecimal(newdtb.Rows[i][“fullMoney”].ToString());

enStrategyDiscount.discount = Convert.ToDecimal(newdtb.Rows[i][“discount”].ToString());

//写入数据到数组

arrDiscount.Add(enStrategyDiscount);

}

//写入数据到数据库

IStrategyBLL strategy = new StrategyBLL();

if (strategy.AddStrategyDiscount(arrDiscount))

{

Response.Write(“true”);

Response.End();

}

else

{

Response.Write(“false”);

Response.End();

}

}

这里,我们需要把json转换成datatable

/// summary

/// Json转DataTable

/// /summary

/// param name=”json”/param

/// returns/returns

private DataTable Json2Dtb(string json)

{

JavaScriptSerializer jss = new JavaScriptSerializer();

ArrayList dic = jss.DeserializeArrayList(json);

DataTable dtb = new DataTable();

if (dic.Count 0)

{

foreach (Dictionarystring, object drow in dic)

{

if (dtb.Columns.Count == 0)

{

foreach (string key in drow.Keys)

{

dtb.Columns.Add(key, drow[key].GetType());

}

}

DataRow row = dtb.NewRow();

foreach (string key in drow.Keys)

{

row[key] = drow[key];

}

dtb.Rows.Add(row);

}

}

return dtb;

}

这样,就可以把数据无刷新的写入到数据库。

当然,如果我们有一个从数据库读取的datatable,如果通过json显示在前台呢。

首先,我们需要把datatable转换为json数据

/// summary

/// DataTable转Json

/// /summary

/// param name=”dtb”/param

/// returns/returns

private string Dtb2Json(DataTable dtb)

{

JavaScriptSerializer jss = new JavaScriptSerializer();

ArrayList dic = new ArrayList();

foreach (DataRow row in dtb.Rows)

{

Dictionarystring, object drow = new Dictionarystring, object();

foreach (DataColumn col in dtb.Columns)

{

drow.Add(col.ColumnName, row[col.ColumnName]);

}

dic.Add(drow);

}

return jss.Serialize(dic);

}

然后写回到前台

/// summary

/// 处理异步请求

/// /summary

private void ProcessRequest()

{

Response.ContentType = “text/html”;

string json = Request.Form[“json”];

//反序列化DataTable

DataTable newdtb = Json2Dtb(json);

//序列化DataTable为JSON

string back = Dtb2Json(newdtb);

Response.Write(back);

Response.End();

}

在前台接受显示:

$(function() {

//点击botton1

$(“#botton1”).click(function() {

createTable(json);

});

});

//显示Json中的数据

function createTable(json) {

var table = $(“table border=’1’/table”);

for (var i = 0; i json.length; i++) {

o1 = json[i];

var row = $(“tr/tr”);

for (key in o1) {

var td = $(“td/td”);

td.text(o1[key].toString());

td.appendTo(row);

}

row.appendTo(table);

}

table.appendTo($(“#back”));

}

如何在前台脚本通过json传递数据到后台

简单的说你的这个问题不能是“PHP读JS文件的数据”,而是“PHP怎么识别JS提交的数组类数据”。因为PHP一般没法直接识别JS的数组,所以你在定义你的这个JS数组的时候要使用 var jsonArray = {“1”:test, “1232”:test2 ;} 这种方式来定义一个JSON数组。之后你就可以自己写个 AJAX 方法请求你的那个处理的页面,并且把这个 JSON 数组传递过去。最后你在你的PHP脚本里面把这个数组用json_decode()方法将这个JSON数组转换成PHP的数组就行了。不过json_decode()只在PHP5.2.0之后的版本内才有集成。如果你的版本比较低就需要你自己去集成进去。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/247516.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 13:21
下一篇 2024-12-12 13:21

相关推荐

  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • openeuler安装数据库方案

    本文将介绍在openeuler操作系统中安装数据库的方案,并提供代码示例。 一、安装MariaDB 下面介绍如何在openeuler中安装MariaDB。 1、更新软件源 sudo…

    编程 2025-04-29
  • 数据库第三范式会有删除插入异常

    如果没有正确设计数据库,第三范式可能导致删除和插入异常。以下是详细解释: 一、什么是第三范式和范式理论? 范式理论是关系数据库中的一个规范化过程。第三范式是范式理论中的一种常见形式…

    编程 2025-04-29
  • JSON的MD5

    在Web开发过程中,JSON(JavaScript Object Notation)是最常用的数据格式之一。MD5(Message-Digest Algorithm 5)是一种常用…

    编程 2025-04-29
  • 使用Java将JSON写入HDFS

    本篇文章将从以下几个方面详细阐述Java将JSON写入HDFS的方法: 一、HDFS简介 首先,先来了解一下Hadoop分布式文件系统(HDFS)。HDFS是一个可扩展性高的分布式…

    编程 2025-04-29
  • leveldb和unqlite:两个高性能的数据库存储引擎

    本文将介绍两款高性能的数据库存储引擎:leveldb和unqlite,并从多个方面对它们进行详细的阐述。 一、leveldb:轻量级的键值存储引擎 1、leveldb概述: lev…

    编程 2025-04-28
  • Python怎么导入数据库

    Python是一种高级编程语言。它具有简单、易读的语法和广泛的库,让它成为一个灵活和强大的工具。Python的数据库连接类型可以多种多样,其中包括MySQL、Oracle、Post…

    编程 2025-04-28
  • 如何使用Newtonsoft datatable转Json

    Newtonsoft DataTable 是一个基于.NET的JSON框架,也是一个用于序列化和反序列化JSON的强大工具。 在本文中,我们将学习如何使用Newtonsoft Da…

    编程 2025-04-28
  • JPRC – 轻松创建可读性强的 JSON API

    本文将介绍一个全新的 JSON API 框架 JPRC,通过该框架,您可以轻松创建可读性强的 JSON API,提高您的项目开发效率和代码可维护性。接下来将从以下几个方面对 JPR…

    编程 2025-04-27
  • Think-ORM数据模型及数据库核心操作

    本文主要介绍Think-ORM数据模型建立和数据库核心操作。 一、模型定义 Think-ORM是一个开源的ORM框架,用于简化在PHP应用中(特别是ThinkPHP)与关系数据库之…

    编程 2025-04-27

发表回复

登录后才能评论