从数据库动态获取数据并显示(一)
补充上一篇文章中遗留下来的坑,上篇文章从数据库动态获取时间并显示。
由于昨天的文章中,前台向后台请求数据后后台返回的值是int[]类型,很多时候不太方便,没有用json传值是因为小尘很多地方还没明白,经过昨晚的恶补和今天的实践,小尘继续补充:
1.Ajax一般用作浏览器向服务器请求数据,小尘看了很多帖子都是这样用的:
function testGet() {
$.ajax({
type: 'get',
url: 'NormalPage.aspx',
async: true,
success: function (result) {
alert(result);
},
error: function () {
setContainer('ERROR!');
}
});
}
【从数据库动态获取数据并显示(一)】注意url的值,指定了请求页面,但不会指定方法,后台代码在page_Log方法中写Respose,具体效果小尘没有实践,因为喜欢吧,小尘用了下面这种方法
function getdata() {$.ajax(
{
type: "post",
async: false,//异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)
//后台获取数据的函数,注意当对该页面重命名时,
url: "Default.aspx/getData",
//返回数据形式为json
contentType:"application/json;
charset=utf-8",
dataType: "json",//成功获取数据
success: function (result) {
var obj = JSON.parse(result.d);
console.log(obj);
alert("tip@@@@@@@@@@" + obj.dataTime + "@@@@@@@@@@@@end");
},//显示错误
error: function (err) {
alert(err + "调用后台程序出现错误,请尝试刷新!");
},});
}
注意这里的url,在页面后面跟了指定的方法,这种方法要求后台的对应方法为静态方法,所以在该方法中不能使用response(会报错,时间原因小尘没有去研究错误原因),后台代码(.cs):
[WebMethod]
public static string getData()
{
string dataOne ="{" + '"' + "dataTime" + '"' + ":[1]"+',' +'"'+"dataValue"+'"'+":[10]"+ "}";
return dataOne;
}
这里小尘在后台返回了一个json格式的字符串给前台,而如果前台要用obj.dataTime(obj.key)的方式取值,需要将后台返回的数据解析成json对象,这里提一下response方法,用这种方法是可以直接返回一个json对象给前台的。
今天的经历分享就到这儿了,错误的地方欢迎批评,也期待大佬们对文章中提到的点进行指导!
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- 一个人的碎碎念
- 我从来不做坏事
- 从蓦然回首到花开在眼前,都是为了更好的明天。
- 西湖游
- 改变自己,先从自我反思开始
- leetcode|leetcode 92. 反转链表 II
- 从我的第一张健身卡谈传统健身房
- 自媒体形势分析
- 操作系统|[译]从内部了解现代浏览器(1)