asp.net ajax传递Json给aspx.cs后台 webmethod方法传递json
1、提取一个向后台写入数据的方法
///向后台cs页面请求数据的方法
function myPost(url,data,func) {
$.ajax({
type: "post", //要用post方式
data:data,
url: url,//"Demo.aspx/SayHello",//方法所在页面和方法名
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
func(1,data.d);
},
error: function (err) {
func(-1,err);
}
});
}
2.1、没有参数的传递到后台的写法
myPost("orgList.aspx/GetOrgList","{}", function (isSuccess, data) {
if (isSuccess < 0) { layer.msg(data); return; }
if (data && data.length > 0) {
zTreeNodes = eval('(' + data + ')');
zTreeObj = $.fn.zTree.init($("#tree"), setting, zTreeNodes);
}
});
2.2带参数的写法
myPost("orgList.aspx/GetModel","{ID:"+treeNode.id+"}", function (isSuccess, data) {
if (isSuccess < 0) { layer.msg(data); return; }
if (data && data.length > 0) {
var model = eval('(' + data + ')');
for (var key in model) {
vue.model[key] = model[key];
}
}
});
2.3传递json的写法
var model = String.toSerialize(vue.model);//.replace(/\"/g,"'");
myPost("orgList.aspx/Save","{value: '"+model+"'}", function (isSuccess, data) {//当传递的是对象的时候,一定要保证将对象转换为字符串
if (isSuccess < 0) { layer.msg(data); return; }
if (data == 1) {
//重新加载控件
GetPowerTree();
clearData();
layer.msg("保存成功!");
}
else if (data == -1) {
layer.msg("保存失败!");
}
else if (data == -2) {
layer.msg("此机构已存在!");
}
});
3.1 无参数后台接收方法
[WebMethod]
public static string GetOrgList()
{
DataTable dt = bll.GetList("1=1").Tables[0];
return JsonHelper.DataTableToJSON(dt);
}
3.2带参数的后台接收方法
[WebMethod]
public static string GetModel(long ID)
{
Model.Org_Orginfo model = bll.GetModel(ID);
return JsonHelper.ObjectToJSON(model);
}
3.3传递json的后台接收方法
[WebMethod]
public static string Save(string value)
{
bool succ = false;
Model.Org_Orginfo model = JsonHelper.JSONToObject<Model.Org_Orginfo>(value);
if (model.id < 0)
{
if (bll.Exists($"orgName='{model.orgName}'")) return "-2";
model.Createtime = DateTime.Now;
model.CreateUser = 1;//创建人-------------------------------------
succ = bll.Add(model);
return succ ? "1" : "-1";
}
else
{
if (bll.Exists($"orgName='{model.orgName}' and id={model.id.ToString()}")) return "-2";
succ = bll.Update(model);
return succ ? "1" : "-1";
}
}
参考:http://www.cnblogs.com/huanbia/archive/2013/03/03/2941293.html
https://blog.csdn.net/naruto517308294/article/details/49097493
asp.net ajax传递Json给aspx.cs后台 webmethod方法传递json的更多相关文章
- aspx页面前端使用js 调用aspx.cs后台的方法,不回传
本次使用 Ajax.dll,AjaxPro.dll 两个类库 1.首先添加引用:Ajax.dll,AjaxPro.dll 文件在 Libiary 目录下 2.配置 WebConfig 属性 将 下面2 ...
- ajax访问 aspx.cs后台
--前台$.ajax({ type: "POST", contentType: "application/json", url: "WebForm2. ...
- asp.net 分析器错误消息: 文件.aspx.cs”不存在错误
发布webapplication时后老是报告分析器错误消息: 文件.aspx.cs”不存在错误,差点抓狂,后来在网上搜到原因是: <%@ Page Language="C#" ...
- 添加ASP.NET AJAX控件工具集到VS2010的方法
在VS2010中Ajax控件只有5个,其实还有很多支持AJAX特定功能的服务器控件,微软是将这些控件当作开放源代码项目.所以没有集成到VS2010中.这些AJAX控件被称为ASP.NET AJAX控件 ...
- JSON实现序列化dump和dumps方法,JSON实现反序列化loads和load方法
通过文件操作,我们可以将字符串写入到一个本地文件.但是,如果是一个对象(例如列表.字典.元组等),就无 法直接写入到一个文件里,需要对这个对象进行序列化,然后才能写入到文件里. 设计一套协议,按照某种 ...
- asp.net ajax get 调用(和post不一样,直接返回json才行,否则报错;post不能返回json)
<script type="text/javascript" > $(document).ready(function () { $('#Label1').click( ...
- ajax请求aspx.cs后台方法
前台jquery代码 $(function () { $("#btnfix").click(function () { $.ajax({ type: "post" ...
- 【ASP.NET Core】MVC模型绑定——实现同一个API方法兼容JSON和Form-data输入
在上一篇文章中,老周给大伙伴们大致说了下 MVC 下的模型绑定,今天咱们进行一下细化,先聊聊模型绑定中涉及到的一些组件对象. ------------------------------------- ...
- 1、在aspx.cs后台Response.Write()跳转路径,打开新窗口
1.Response.Write()打开新窗口 Response.Write(" <script type='text/JavaScript'>window.open('&quo ...
随机推荐
- javaScript中==和===对数组、对象的判断是它们是否同一个实例对象
问题描述 在实现业务时,大量用到了 if(a === b)这样的判断,但有一个类似判断一直进不去这个if条件, a === b 返回的一直是false,但是其他几个类似判断,都正常触发条件. 原因 ...
- 插座-网络问题-ESP8266
//ATK-ESP8266模块测试主函数,检查WIFI模块是否在线 void atk_8266_test(void) { ))//检查WIFI模块是否在线 { atk_8266_quit_trans( ...
- numpy使用数组进行数据处理
numpy使用数组进行数据处理 meshgrid函数 理解: 二维坐标系中,X轴可以取三个值1,2,3, Y轴可以取三个值7,8, 请问可以获得多少个点的坐标? 显而易见是6个: (1,7)(2,7) ...
- 打印输出opencv的版本信息
本文链接: https://mangoroom.cn/opencv/print-opencv-version-info.html 序 查看自己安装的opencv的版本信息的方法有两种. 方法一-查看l ...
- nginx配置本地域名反向代理实现本地多域名80访问
什么是反向代理? 代理:通过客户机的配置,实现让一台服务器代理客户机,客户的所有请求都交给代理服务器处理. 反向代理:用一台服务器,代理真实服务器,用户访问时,不再是访问真实服务器,而是代理服务器. ...
- nrm切换npm的镜像
安装node环境 npm -v 1. 安装nrm npm install nrm -g 2. 查看可选的镜像源 nrm ls 号代表目前使用的镜像源 3. 切换镜像源 现在将镜像源切换到淘宝为例 nr ...
- KNN-机器学习算法
''' Created on Sep 16, 2010 kNN: k Nearest Neighbors Input: inX: vector to compare to existing datas ...
- ORA-00979: 不是 GROUP BY 表达式
在oracle数据库中,sql语句中group by子句报错,原因是select 存在列字段,而group by中不存在.
- 真香系列之 Golang 升级
Golang 以前的依赖管理一直饱受诟病,社区的方案也层出不穷,比如 vendor, glide, godep 等.之前的依赖管理一直是依靠 GOPATH 或者将依赖代码下载到本地,这种方式都有劣势. ...
- Jdbc Driver驱动和ServerTimeZone时区的的问题
一.JDBC驱动的版本号以及名称问题 区别: com.mysql.jdbc.Driver 是 mysql-connector-java 5中的 com.mysql.cj.jdbc.Driver 是 m ...