https://blog.csdn.net/luckyrass/article/details/38758007
一、前台直接输出后台传递的数据
后台代码:
// .aspx.cspublic string value = string.Empty;public StringBuilder list = new StringBuilder();protected void Page_Load(object sender, EventArgs e){ ???value = "yes"; ???list.Append("第一串文字<br />"); ???list.Append("第二串文字<br />");}
前台代码:
<!--.aspx--><div><%=value%></div><!--if else 写法--><div><%=(value== "yes" ? "是yes" : "不是yes")%></div><div><%=list.ToString()%></div>
也可以直接在js里获取
// .aspx<script type="text/javascript">var value = '<%=value%>';// 获取Web.config里的domainurlvar domainurl = '<%= System.Configuration.ConfigurationManager.AppSettings["domainurl"] %>';</script>
二、 前台传参,后台获取参数并返回值,前台可直接调用方法必须是静态方法
后台代码:
// // .aspx.cspublic static int getvalue(int value){ ???return 555 * value;}
前台代码:
<!--.aspx--><div><%=getvalue(2)%></div>
三、新建一个类,前台传参 类中方法获取参数并返回值,前台可直接调用方法必须是静态方法
后台代码:
// 比如indexController.cs类或者一般处理程序IndexController.ashxpublic class IndexController ???public static string geturl(string apiName) ???{ ???????string url = "http://www.test.com/" + apiName; ???????return url; ???}}
前台代码:
<div><%=indexController.geturl("apiName")%></div><div><%=IndexController.geturl("apiName")%></div>
四、ajax 和 WebMethod 传参
后台代码 :
// index.aspx.cs[WebMethod]public static string getValue(string value){ ???return "Hello Ajax! " + value;}
前台代码:
// ?index.aspx$(function () { ???$.ajax({ ???????type: "post", //要用post方式 ????????????????????????url: "indexWebForm.aspx/getValue",//方法所在页面和方法名 ???????contentType: "application/json; charset=utf-8", ???????dataType: "json", ???????data: JSON.stringify({ value: "Test" }),//json字符串 ???????async: false,//阻塞的异步就是同步 ???????beforeSend: function () { ???????????// do something. ???????????// 一般是禁用按钮等防止用户重复提交 ???????????// $("#btnClick").attr({ disabled: "disabled" }); ???????????// 或者是显示loading图片 ???????}, ???????success: function (data) { ???????????alert("success: " + data.d);//注意这里:必须通过data.d才能获取到服务器返回的值 ???????????// 服务端可以直接返回Model,也可以返回序列化之后的字符串,如果需要反序列化:string re= JSON.parse(data.d); ???????????// 有时候需要嵌套调用ajax请求,也是可以的 ???????}, ???????complete: function () { ???????????//do something. ???????????// $("#btnClick").removeAttr("disabled"); ???????????// 隐藏loading图片 ???????}, ???????error: function (data) { ???????????alert("error: " + data); ???????} ???});});
asp.net 前后台数据交互方式(转)
原文地址:https://www.cnblogs.com/wsq-blog/p/10699068.html