- 浏览: 606043 次
- 性别:
- 来自: 郑州
文章分类
最新评论
-
AlanKay:
Mart_dai 写道Hi 齐晓威_518,我想问问,在exc ...
java 后台 Excel 文件生成后转化为字节流 -
18335864773:
国内的pageoffice插件也可以生成excel。也可以用流 ...
java 后台 Excel 文件生成后转化为字节流 -
JAVA_CLASSm:
你好,请问这个还有源码吗?我刚开始接触这个,想要源码学习一下. ...
同一账号不能多地登录(限制同一账号同一时刻只能一个用户登录使用,向QQ一样) -
pangjinquan:
...
前台JS获取后台的Json数据, 动态创建table并填充数据--转自一位朋友 -
lvjun106:
这是增加删除列,,,,
JQuery自动为表格增加一列
序列化字符方法:注意这里的引用“System.Runtime.Serialization”和“System.ServiceModel.Web”
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization.Json;
using System.ServiceModel.Web;///记得引用这个命名空间
using System.IO;
using System.Text;
namespace BLL
{
/// <summary>
/// 序列化实体类
/// </summary>
public class JsonHelper
{
public JsonHelper()
{
//
// TODO: Add constructor logic here
//
}
/// <summary>
/// 把对象序列化 JSON 字符串
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="obj">对象实体</param>
/// <returns>JSON字符串</returns>
public static string GetJson<T>(T obj)
{
//记住 添加引用 System.ServiceModel.Web
/**
* 如果不添加上面的引用,System.Runtime.Serialization.Json; Json是出不来的哦
* */
DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(T));
using (MemoryStream ms = new MemoryStream())
{
json.WriteObject(ms, obj);
string szJson = Encoding.UTF8.GetString(ms.ToArray());
return szJson;
}
}
/// <summary>
/// 把JSON字符串还原为对象
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="szJson">JSON字符串</param>
/// <returns>对象实体</returns>
public static T ParseFormJson<T>(string szJson)
{
T obj = Activator.CreateInstance<T>();
using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))
{
DataContractJsonSerializer dcj = new DataContractJsonSerializer(typeof(T));
return (T)dcj.ReadObject(ms);
}
}
}
}
实体类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Model
{
public class jsonItem
{
public string UserName { get; set; }
public string PWD { get; set; }
}
}
调用方法:用反射方式,只需传方法就可以执行
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Text;
namespace test.JQuery.json
{
/// <summary>
/// $codebehindclassname$ 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class json : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
//反射的机制:只需要传方法进来就可以执行方法、获得数据。。
if (context.Request["cmd"] != null)
{
string cmd = context.Request["cmd"];
var method = this.GetType().GetMethod(cmd);
if (method != null)
{
method.Invoke(this, new object[] { context });
}
}
}
/// <summary>
/// 序列化的Json字符串
/// </summary>
public void GetInfo(HttpContext context)
{
Model.jsonItem item = new Model.jsonItem();
Model.jsonItem item1 = new Model.jsonItem();
List<Model.jsonItem> list = new List<Model.jsonItem>();
item.UserName = "aaaa";
item.PWD = "1111";
list.Add(item);
item1.UserName = "bbbb";
item1.PWD = "2222";
list.Add(item1);
string strJson = BLL.JsonHelper.GetJson<List<Model.jsonItem>>(list);
context.Response.Write(strJson);
}
/// <summary>
/// 序列化的Json字符串
/// </summary>
public void GetInfo1(HttpContext context)
{
Model.jsonItem item = new Model.jsonItem();
Model.jsonItem item1 = new Model.jsonItem();
List<Model.jsonItem> list = new List<Model.jsonItem>();
item.UserName = "abc";
item.PWD = "123";
list.Add(item);
item1.UserName = "bcd";
item1.PWD = "234";
list.Add(item1);
string strJson = BLL.JsonHelper.GetJson<List<Model.jsonItem>>(list);
context.Response.Write(strJson);
//string output = string.Format("'UserName':'{0}','PWD':'{1}'", "cccc", "3333");
//string output1 = string.Format("'UserName':'{0}','PWD':'{1}'", "dddd", "4444");
//StringBuilder result = new StringBuilder();
//result.AppendFormat("[{0}{1}{2},{3}{4}{5}]", "{", output, "}", "{", output1, "}");
//context.Response.Write(result.ToString());
//context.Response.End();
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
html代码调用:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="http://imwujianhao.blog.163.com/blog/../jquery-1.4.2.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
function BtnClick() {
var uid = $("#Text1").val();
var pwd = $("#Text2").val();
$.ajax({
url: "json.ashx",
type: "POST",
data: { cmd: "GetInfo", Password: pwd },
beforeSend: loading,
success: function(data) {
var json = eval(data); //eval("(" + data + ")");
$("#dd").empty(); //清除dd的信息
$.each(json, function(idx, item) {
var user = item.UserName;
var pass = item.PWD;
$("#dd").append("<b>用户名:" + user + " 密码:" + pass + "</b>");
});
}
});
}
function loading() {
$("#dd").html("<img src='http://imwujianhao.blog.163.com/blog/20-0.gif' />");
}
function BtnClick1() {
$.ajax({
url: "json.ashx",
type: "POST",
data: { cmd: "GetInfo1" },
beforeSend: loading,
success: function(data) {
//使用eval函数
var json = eval(data);
$("#dd").empty();
//因为上面为list集合
for (var i = 0; i < json.length; i++) {
$("#dd").append("<h3>用户名:" + json[i].UserName + " 密码:" + json[i].PWD + "</h3>");
//alert(json[i].Id + "Name:" + json[i].Name);
}
}
});
}
</script>
</head>
<body>
<div>
<input type="text" name="Text1" id="Text1" /><br />
<input type="text" name="Text2" id="Text2" />
<br />
<input type="button" id="btn1" value="事件1" onclick="BtnClick()" />
<input type="button" id="Button1" value="事件2" onclick="BtnClick1()" />
</div>
<div id="dd">
sd
</div>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization.Json;
using System.ServiceModel.Web;///记得引用这个命名空间
using System.IO;
using System.Text;
namespace BLL
{
/// <summary>
/// 序列化实体类
/// </summary>
public class JsonHelper
{
public JsonHelper()
{
//
// TODO: Add constructor logic here
//
}
/// <summary>
/// 把对象序列化 JSON 字符串
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="obj">对象实体</param>
/// <returns>JSON字符串</returns>
public static string GetJson<T>(T obj)
{
//记住 添加引用 System.ServiceModel.Web
/**
* 如果不添加上面的引用,System.Runtime.Serialization.Json; Json是出不来的哦
* */
DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(T));
using (MemoryStream ms = new MemoryStream())
{
json.WriteObject(ms, obj);
string szJson = Encoding.UTF8.GetString(ms.ToArray());
return szJson;
}
}
/// <summary>
/// 把JSON字符串还原为对象
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="szJson">JSON字符串</param>
/// <returns>对象实体</returns>
public static T ParseFormJson<T>(string szJson)
{
T obj = Activator.CreateInstance<T>();
using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))
{
DataContractJsonSerializer dcj = new DataContractJsonSerializer(typeof(T));
return (T)dcj.ReadObject(ms);
}
}
}
}
实体类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Model
{
public class jsonItem
{
public string UserName { get; set; }
public string PWD { get; set; }
}
}
调用方法:用反射方式,只需传方法就可以执行
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Text;
namespace test.JQuery.json
{
/// <summary>
/// $codebehindclassname$ 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class json : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
//反射的机制:只需要传方法进来就可以执行方法、获得数据。。
if (context.Request["cmd"] != null)
{
string cmd = context.Request["cmd"];
var method = this.GetType().GetMethod(cmd);
if (method != null)
{
method.Invoke(this, new object[] { context });
}
}
}
/// <summary>
/// 序列化的Json字符串
/// </summary>
public void GetInfo(HttpContext context)
{
Model.jsonItem item = new Model.jsonItem();
Model.jsonItem item1 = new Model.jsonItem();
List<Model.jsonItem> list = new List<Model.jsonItem>();
item.UserName = "aaaa";
item.PWD = "1111";
list.Add(item);
item1.UserName = "bbbb";
item1.PWD = "2222";
list.Add(item1);
string strJson = BLL.JsonHelper.GetJson<List<Model.jsonItem>>(list);
context.Response.Write(strJson);
}
/// <summary>
/// 序列化的Json字符串
/// </summary>
public void GetInfo1(HttpContext context)
{
Model.jsonItem item = new Model.jsonItem();
Model.jsonItem item1 = new Model.jsonItem();
List<Model.jsonItem> list = new List<Model.jsonItem>();
item.UserName = "abc";
item.PWD = "123";
list.Add(item);
item1.UserName = "bcd";
item1.PWD = "234";
list.Add(item1);
string strJson = BLL.JsonHelper.GetJson<List<Model.jsonItem>>(list);
context.Response.Write(strJson);
//string output = string.Format("'UserName':'{0}','PWD':'{1}'", "cccc", "3333");
//string output1 = string.Format("'UserName':'{0}','PWD':'{1}'", "dddd", "4444");
//StringBuilder result = new StringBuilder();
//result.AppendFormat("[{0}{1}{2},{3}{4}{5}]", "{", output, "}", "{", output1, "}");
//context.Response.Write(result.ToString());
//context.Response.End();
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
html代码调用:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="http://imwujianhao.blog.163.com/blog/../jquery-1.4.2.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
function BtnClick() {
var uid = $("#Text1").val();
var pwd = $("#Text2").val();
$.ajax({
url: "json.ashx",
type: "POST",
data: { cmd: "GetInfo", Password: pwd },
beforeSend: loading,
success: function(data) {
var json = eval(data); //eval("(" + data + ")");
$("#dd").empty(); //清除dd的信息
$.each(json, function(idx, item) {
var user = item.UserName;
var pass = item.PWD;
$("#dd").append("<b>用户名:" + user + " 密码:" + pass + "</b>");
});
}
});
}
function loading() {
$("#dd").html("<img src='http://imwujianhao.blog.163.com/blog/20-0.gif' />");
}
function BtnClick1() {
$.ajax({
url: "json.ashx",
type: "POST",
data: { cmd: "GetInfo1" },
beforeSend: loading,
success: function(data) {
//使用eval函数
var json = eval(data);
$("#dd").empty();
//因为上面为list集合
for (var i = 0; i < json.length; i++) {
$("#dd").append("<h3>用户名:" + json[i].UserName + " 密码:" + json[i].PWD + "</h3>");
//alert(json[i].Id + "Name:" + json[i].Name);
}
}
});
}
</script>
</head>
<body>
<div>
<input type="text" name="Text1" id="Text1" /><br />
<input type="text" name="Text2" id="Text2" />
<br />
<input type="button" id="btn1" value="事件1" onclick="BtnClick()" />
<input type="button" id="Button1" value="事件2" onclick="BtnClick1()" />
</div>
<div id="dd">
sd
</div>
</body>
</html>
发表评论
-
jquery easyui dialog的几个使用问题
2014-09-20 11:27 1207jquery easyui dialog可以两种方式使用 1) ... -
easyUi-中文API
2014-09-17 22:51 517一位大神说: EasyUI终于迎来大版本更新了,本次 ... -
给力的jQuery信息提示插件 - Poshy Tip
2013-12-19 22:20 745jQuery 自从出现以来,以其简洁灵活的编程模式迅速流 ... -
jQuery表单美化插件 - Ideal Forms
2013-12-22 09:59 2309Form表单元素的美化一直都是一个比较麻烦的事情,尤其是单 ... -
jQuery实现仿Excel表格编辑功能 - Handsontable-转给力技术
2013-12-18 21:29 19605今天这篇文章要给大家推荐的是一个仿 Excel 表格编辑功 ... -
jQuery文本框字符限制插件 - Textarea Counter
2013-12-18 21:29 901众所周知<textarea>文本框没有类似ma ... -
jQuery文本框智能提示插件-转自给力技术
2013-12-18 21:30 866在网站中使用文本框智能提示功能,能有效的提升用户体验,这 ... -
免费的jQuery用户界面组件包 - Chico UI
2013-12-19 22:20 755Chico UI 是一个开源且免费的用户界面组件库,让 ... -
imgPreview - 实现图片预览功能的jQuery插件
2013-12-18 21:28 3656jQuery以其插件众多、易于使用的特点流行于开发人员中, ... -
(转)jquery each解析数组 json xml
2013-12-16 23:18 965jquery each解析数组: var arr = ... -
js/jquery解析json和数组格式的方法介绍
2013-12-16 23:19 1152在解析之前,我们必须弄清楚几个概念:数组,关联数组以及js ... -
JQuery+JSON+Struts返回一个List到页面
2013-12-16 23:19 593最近有人问我,怎么用JQuery+JSON+Struts实现, ... -
JQuery利用json读取JavaBean List
2013-12-16 23:19 938读取JavaBean 1、一个JavaBean Java代码: ... -
json定义及jquery操作json
2013-12-22 09:59 1255一、背景 json是一种轻量级数据交换格式,非常利于java服 ... -
jquery,each的使用
2013-12-16 23:19 659<!DOCTYPE html PUBLIC " ... -
jquery全选,jquery全不选,jquery反选
2013-12-17 21:39 633<!DOCTYPE html PUBLIC " ... -
jquery 当textarea里内容被清空时,提交按钮禁用?是怎么触发的?
2013-12-22 10:00 1045$(document).ready(function(){ ... -
jquery操作input值总结
2013-12-17 21:41 777获取选中的值 获取一组 ... -
jquery属性禁用 以及dom操作
2013-12-04 22:59 1498<%@ page contentType="t ... -
jquery小例子:动态生成表格和无刷新评论
2013-12-04 22:55 762<%--Created by IntelliJ ...
相关推荐
在.NET中使用AJAX技术来做服务器端和客户端交互,用JSON做为在异步应用程序中发送和接收信息的数据格式。
jquery ajax用json传值实例 适用于初学者,将页面文件拖到网站项目中即可,包含了传入值传出值,可以根据此代码扩展为自己的代码,一看就明白,有备注
.Net JQuery$.ajax Json实例应用 有人在评论里面骂,这个不能用,现在把源码传上来,估计是没有引用System.Web.Extensions和System.Web.Extensions.Design这两个Dll
struts2使用jquery整合ajax、json用户登录实例源码
php基于jquery的ajax技术传递json数据简单实例.docx
jquery_ajax_json简单实例jquery_ajax_json简单实例
jQuery+Json 实现Ajax无刷新分类管理实例演示 基于jquery+json实现的网站后台管理中无刷新的分类管理功能演示,如上图演示所示,可无刷新添加一个分类、在动画弹出的对话框中输入分类名称即可实现保存,同进还可无...
Struts+Jquery+Ajax+Json应用实例,前端引入jquery,后台使用struts框架。前端js调用后台action,并将后台返回的json数据进行解析,设置web页面
ajax无刷新分页功能,包括对json数据的处理方式
这是一个学习jquery-ajax的实例,实例中应用到了bean -json的转化, 页面上应用到了jqury如何解析返回的json数据。
基于jQuery的AJAX和JSON的实例.docx基于jQuery的AJAX和JSON的实例.docx
演示json和jquery实现ajax的小demo!
基于jQuery的AJAX和JSON的实例 详解
AJAX-JSON该源码从实例入手教你如何成为一个javascript高手
jQuery ajax操作WebService实例源码 jquery中的ajax 操作Webservice的例子,适合初学者,里面包括许多jQuery的内容 jQuery中的动态效果应用,按钮移动,元素隐藏等。异步加载 HTML json XML等示例。
php基于jquery的ajax技术传递json数据简洁实例_.docx
下面小编就为大家带来一篇jQuery ajax读取本地json文件的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
实现了java+ajax+json+jquery的完整实例,包括ajax+jquery向后台传参,后台传输json数据到前台ajax接收。里面有自己遇到的四个问题,及解决的具体办法。
一、JSON的一些基础知识。 JSON中对象通过”{}”来标识,一个”{}”代表一个对象,如{“AreaId”:”123″},对象的值是键值对的形式(key:value)。 “[]”,标识数组,数组内部各个数据之间通过”,”分割,如...