Jquery+asp.net后台数据传到前台js进行解析的方法
所以在解析后台数据的时候,我们需要根据后台的数据情况,特殊处理和对待。
我这里后台用的是asp.net提供的wcf服务,也有ashx一般处理程序。大致原理差不多。
C#中我们经常用的对象,有实体对象比如:User;有List集合,一般为返回列表。
复杂点的还有对象嵌套对象或者list集合的。不过没什么差别,只要看你的数据多少来决定是由js处理数据,
还是后台处理了直接返回最终结果。
1、实体对象:返回是对象的话,在js中,直接就是和你后台代码类中的对象数据是一样的。
比如下面代码,就是获取到一个对象。直接用它的name属性就可以获取到。
$.ajax({
type: "post",
dataType: "json", traditional: true,
data: { oper: "edit", sid: id },
url: AjaxUrl,
success: function (data, textStatus) {
if (data != null) {
if (data) {
$("#name").val(data.Name); 获取到对象了。
SetSelectOpertionValue("selectRelation", data.Relation);
SetSelectOpertionValue("selectaddreason", data.Reason);
} else {
$("#btnAdd").attr("disabled", false); $("#btnAdd").text("编辑");
}
}
},
complete: function
(XMLHttpRequest, textStatus) {
},
error: function
(e) {
$("#btnAdd").attr("disabled", false); $("#btnAdd").text("编辑");
}
});
2、返回数据是List集合,包含一些对象:这应用场景也很多。
在js中,对应的一个array数组。数组中是你返回的对象实体。可以采用each遍历。具体可以参考:
demo:
$.ajax({ type: "post",
dataType: "json", traditional: true,
data: { oper: "list", lc: ID,nm:$("#searchname").val() },
url:sAjaxUrl,
success: function (data, textStatus) { if (data != null) {
if (data.Instance==null &data.Instance.length==0) { return;
}
else {
var datalist = data.Instance; if (sort == 1) { datalist = datalist.sort(
function (a, b) {
return (a.Id - b.Id); }
);
} else { datalist = datalist.sort(
function (a, b) { return (b.Id - a.Id); }
);
}
var html = "";
//绑定数据到table
var tabledata = GetJson(datalist);
}
}
},
complete: function (XMLHttpRequest, textStatus) { },
error: function (e) {
}
});
<script type="text/javascript">
//假如返回的是:
var json = "['2010-4-2','2010-4-1','2010-5-2']";
var dateArray = eval(json);
for(i in dataArray)
{
document.write(dataArray[i]);
}
</script>
或者:
$.each(data.comments, function(i, item) {
$("#info").append(
"<div>" + item.id + "</div>" +
"<div>" + item.nickname + "</div>" +
"<div>" + item.content + "</div><hr/>");
});
3、如果是复杂嵌套的话,也是对象了。js中会完全和后台对应。你遍历即可。
现在很多时候,后台返回给前台一般都是用json了。json在js中可以直接解析成对象。
Jquery+asp.net后台数据传到前台js进行解析的方法的更多相关文章
- 通过EL表达式,后台数据传到前台,引号及后面的数据被截断的问题:
问题描述: 通过EL表达式,后台数据传到前台,引号及后面的数据被截断的问题: 如: 前端页面: html: 问题解决: 1.一个简单的办法,把 input 写成这样: <input type=& ...
- Asp.Net_Ajax调用WebService返回Json前台获取循环解析
利用JQuery的$.ajax()可以很方便的调用 asp.net的后台方法.但往往从后台返回的json字符串不能够正确解析,究其原因,是因为没有对返回的json数据做进一步的加工.其实,这里只需 要 ...
- 黄聪:jquery mobile通过a标签页面跳转后,样式丢失、js失效的解决方法
问题描述: 用ajax跳转的时候,从a.html跳转到b.html后,b.html的css以及js都失效了. 解决办法1: 将所有的css以及js全部放在div内. 原理: 由于jqm的ajax跳转的 ...
- asp.net中json格式化及在js中解析json
类: public class UploadDocumentItem { public UploadDocumentItem() { } public string DocMuid { get; se ...
- 37.前台js登陆加密分析
开篇 由于现在的登陆接口如果明文传输的话,容易被暴力破解,越来越多的网站选择了前台js加密的方式,像这样: 或者这样: 枯了,对渗透造成一定的影响 本篇文章将系统的讲述使用Python对前台js加密爆 ...
- 前台js与后台方法互调
一:后台调用前台js的方法 ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", " ...
- phongap+ jquery + asp.net +android,我把我遇到的问题和处理方法的连接总结一下
这些都是最基本的问题,在实际的运用中都会用到 第1章.搭建Android的开发环境-跟我学编程 Win7旗舰版中的IIS配置asp.net的运行环境 - 追夢 - 博客园 vs2012下asp.net ...
- asp.net、mvc、ajax、js、jquery、sql、EF、linq、netadvantage第三方控件知识点笔记
很简单,如下: 父页面:(弹出提示框) function newwindow(obj) { var rtn = window.showModalDialog('NewPage.htm','','sta ...
- Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合
今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...
随机推荐
- 分布式日志收集系统--Chukwa
1. 安装部署 1.1 环境要求 1.使用的JDK的版本必须是1.6或者更高版本,本实例中使用的是JDK1.6 2.使用的hadoop的版本必须是Hadoop0.20.205.1及以上版本,本实例中使 ...
- 实验五 Java网络编程及安全
北京电子科技学院 实 验 报 告 课程:移动平台应用开发实践 班级:201592 姓名:曾俊宏 学号:20159210 成绩:___________ 指导老师: ...
- springMVC从上传的Excel文件中读取数据
示例:导入客户文件(Excle文件) 一.编辑customer.xlsx 二.在spring的xml文件设置上传文件大小 <!-- 上传文件拦截,设置最大上传文件大小 10M=10*1024*1 ...
- 通过PLSQL Developer导入SQL文件
1.点击“工具” 2.选中其中的“导入表(L)”,在按下图所示操作: PLSQL Developer会自动运行相关命令,在Tables中刷新即可看到新导入的表.
- SaaS系列介绍之一: SaaS的前身ASP介绍
1. 引言 未来将越来越不可预测,这是新经济最具挑战性的方面之一.商务和技术上的瞬息万变会产生变化,这既可以看作要防范的威胁,也可以看作应该欢迎的机遇. ...
- 213. House Robber II
题目: Note: This is an extension of House Robber. After robbing those houses on that street, the thief ...
- minitools
1.android 2.linux 3.luoji 4.windows CE ----
- Android 签名(8)签名前用Zipalign简单优化
1 为什么要优化 Android SDK中包含一个“zipalign”的工具,它能够对打包的应用程序进行优化.在你的应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效 ...
- Debug 和 Release 编译方式的本质区别
一.Debug 和 Release 编译方式的本质区别 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序.Release 称为发布版本,它往往是进行了各种优化,使得程 ...
- Oracle安装时先决条件检查失败的解决方案
Oracle安装时先决条件检查失败的解决方案 [java] 安装环境:Win7-64bit专业版,内存6G,硬盘空间足够 安装版本:Oracle Database 11g Release 2 (1 ...