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的更多相关文章

  1. aspx页面前端使用js 调用aspx.cs后台的方法,不回传

    本次使用 Ajax.dll,AjaxPro.dll 两个类库 1.首先添加引用:Ajax.dll,AjaxPro.dll 文件在 Libiary 目录下 2.配置 WebConfig 属性 将 下面2 ...

  2. ajax访问 aspx.cs后台

    --前台$.ajax({ type: "POST", contentType: "application/json", url: "WebForm2. ...

  3. asp.net 分析器错误消息: 文件.aspx.cs”不存在错误

    发布webapplication时后老是报告分析器错误消息: 文件.aspx.cs”不存在错误,差点抓狂,后来在网上搜到原因是: <%@ Page Language="C#" ...

  4. 添加ASP.NET AJAX控件工具集到VS2010的方法

    在VS2010中Ajax控件只有5个,其实还有很多支持AJAX特定功能的服务器控件,微软是将这些控件当作开放源代码项目.所以没有集成到VS2010中.这些AJAX控件被称为ASP.NET AJAX控件 ...

  5. JSON实现序列化dump和dumps方法,JSON实现反序列化loads和load方法

    通过文件操作,我们可以将字符串写入到一个本地文件.但是,如果是一个对象(例如列表.字典.元组等),就无 法直接写入到一个文件里,需要对这个对象进行序列化,然后才能写入到文件里. 设计一套协议,按照某种 ...

  6. asp.net ajax get 调用(和post不一样,直接返回json才行,否则报错;post不能返回json)

    <script type="text/javascript" > $(document).ready(function () { $('#Label1').click( ...

  7. ajax请求aspx.cs后台方法

    前台jquery代码 $(function () { $("#btnfix").click(function () { $.ajax({ type: "post" ...

  8. 【ASP.NET Core】MVC模型绑定——实现同一个API方法兼容JSON和Form-data输入

    在上一篇文章中,老周给大伙伴们大致说了下 MVC 下的模型绑定,今天咱们进行一下细化,先聊聊模型绑定中涉及到的一些组件对象. ------------------------------------- ...

  9. 1、在aspx.cs后台Response.Write()跳转路径,打开新窗口

    1.Response.Write()打开新窗口 Response.Write(" <script type='text/JavaScript'>window.open('&quo ...

随机推荐

  1. javaScript中==和===对数组、对象的判断是它们是否同一个实例对象

      问题描述 在实现业务时,大量用到了 if(a === b)这样的判断,但有一个类似判断一直进不去这个if条件, a === b 返回的一直是false,但是其他几个类似判断,都正常触发条件. 原因 ...

  2. 插座-网络问题-ESP8266

    //ATK-ESP8266模块测试主函数,检查WIFI模块是否在线 void atk_8266_test(void) { ))//检查WIFI模块是否在线 { atk_8266_quit_trans( ...

  3. numpy使用数组进行数据处理

    numpy使用数组进行数据处理 meshgrid函数 理解: 二维坐标系中,X轴可以取三个值1,2,3, Y轴可以取三个值7,8, 请问可以获得多少个点的坐标? 显而易见是6个: (1,7)(2,7) ...

  4. 打印输出opencv的版本信息

    本文链接: https://mangoroom.cn/opencv/print-opencv-version-info.html 序 查看自己安装的opencv的版本信息的方法有两种. 方法一-查看l ...

  5. nginx配置本地域名反向代理实现本地多域名80访问

    什么是反向代理? 代理:通过客户机的配置,实现让一台服务器代理客户机,客户的所有请求都交给代理服务器处理. 反向代理:用一台服务器,代理真实服务器,用户访问时,不再是访问真实服务器,而是代理服务器. ...

  6. nrm切换npm的镜像

    安装node环境 npm -v 1. 安装nrm npm install nrm -g 2. 查看可选的镜像源 nrm ls 号代表目前使用的镜像源 3. 切换镜像源 现在将镜像源切换到淘宝为例 nr ...

  7. KNN-机器学习算法

    ''' Created on Sep 16, 2010 kNN: k Nearest Neighbors Input: inX: vector to compare to existing datas ...

  8. ORA-00979: 不是 GROUP BY 表达式

    在oracle数据库中,sql语句中group by子句报错,原因是select 存在列字段,而group by中不存在.

  9. 真香系列之 Golang 升级

    Golang 以前的依赖管理一直饱受诟病,社区的方案也层出不穷,比如 vendor, glide, godep 等.之前的依赖管理一直是依靠 GOPATH 或者将依赖代码下载到本地,这种方式都有劣势. ...

  10. Jdbc Driver驱动和ServerTimeZone时区的的问题

    一.JDBC驱动的版本号以及名称问题 区别: com.mysql.jdbc.Driver 是 mysql-connector-java 5中的 com.mysql.cj.jdbc.Driver 是 m ...