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 ...
随机推荐
- Websocket --(3)实现
今天介绍另外一种websocket实现方式,结合了spring MVC,并完善了第二节所提到做一个简单的登录认证用来识别用户的名称.界面继续沿用第二节的布局样式,同时增加上线和下线功能. 参考了 ht ...
- 更新到.netcore3.0后找不到dotnet-ef的解决办法
在项目根目录下建立global.json文件 { "sdk": { "version": "2.2.402" } } 或使用命令 dotne ...
- C#模态对话框和非模态对话框
模态对话框弹出窗口阻止调用窗口的所有消息响应.只有在弹出窗口结束后调用窗口才能继续.在模态窗口“关闭”后,可以读取模态窗口中信息,包括窗口的返回状态,窗口子控件的值. 非模态对话框可以在弹出窗口和调用 ...
- [ZJOI2008]骑士 题解
题面 这道题稍微想一想就会联想到树形DP的入门题:没有上司的舞会: 但是再想一想会发现这根本就不是一颗树,因为它比树多了一条边: 这时候我们引入一个新的概念:基环树: 顾名思义(??),基环树就是在一 ...
- 洛谷 P1233 木棍加工 题解
题面 Dilworth定理:在数学理论中的序理论与组合数学中,Dilworth定理根据序列划分的最小数量的链描述了任何有限偏序集的宽度. 反链是一种偏序集,其任意两个元素不可比:而链则是一种任意两个元 ...
- ubuntu 安装 CUDA、 cuDNN 的tips
CUDA 查看驱动兼容性:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html 查看GCC 与CUDA 驱动版本的兼容性 ...
- 082、数据收集利器 cAdvisor (2019-04-30 周二)
参考https://www.cnblogs.com/CloudMan6/p/7683190.html cAdvisor 是google 开发的容器监控工具,下面我们开始安装和体验 cAdvisor ...
- java实现spark常用算子之collect
import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.a ...
- vue 中 @click.native.prevent 事件
在项目中看到@click.native.prevent, 查了一点资料 总结一下, 1.给vue组件绑定事件时候,必须加上native ,否则会认为监听的是来自Item组件自定义的事件, 2.prev ...
- 2019-11-29-VisualStudio-解决方案筛选器-slnf-文件
title author date CreateTime categories VisualStudio 解决方案筛选器 slnf 文件 lindexi 2019-11-29 08:41:13 +08 ...