WEB页面的数据交互
来源:互联网 发布:淘宝物流短信提醒 编辑:程序博客网 时间:2024/05/16 12:16
做WEB开发经常遇到的问题时前台后台的数据交互问题,这里简单介绍一下Ajax的用法。除此之外还有get,post的表单提交传值等方式,这里简单的介绍一下他们的用法。
- get方式
- post方式
- Ajax方式
1. get方式
前台代码:
<form method="get"> <p>First Name: <input type="text"name="fname" /></p> <p>Last Name: <input type="text" name="lname" /></p> <input type="submit" value="Submit" /></form>
后台代码:
protected void Page_Load(object sender, EventArgs e){ string ffname = Request["fname"]; string llname = Request["lname"];}
2. post方式
同理,post方法类似,前台代码:
<form method="post"> <p>First Name: <input type="text"name="fname" /></p> <p>Last Name: <input type="text" name="lname" /></p> <input type="submit" value="Submit" /></form>
后台代码:
protected void Page_Load(object sender, EventArgs e){ string ffname = Request["fname"]; string llname = Request["lname"];}
3. Ajax方式
函数形式:
function myAjax(data, url, successFun, errorFun) { var o = { data: data, }; $.ajax({ data: JSON.stringify(o), type: "Post", url: url, contentType: "application/json; charset=utf-8", success: successFun, error: errorFun, })}
这里,myAjax函数里面的四个传入值分别是
data:要传的数据
url:要传的路径,具体到函数,一般用相对路径
successFun:传值成功的回调函数
errorFun:传值失败的回调函数
调用时,具体代码实例:
var url = "../BasestartPage.aspx/postToFrontend"; myAjax("test", url, function (data) { var answer = JSON.parse(data.d); }, function () { alert("error"); });
其中,postToFrontend是具体的后台函数,用来接收客户端传来的数据,传给服务端的是一个字符串,可以看出,我是以json序列化的方式传给服务端。
后台的函数:
[WebMethod]public static string postToFrontend(string data){ return new JavaScriptSerializer().Serialize(data);}
服务端传来的值也是经过序列化的,所以前台有个JSON.parse来反序列化得到相应的对象。
注意事项:
- myAjax函数传的对象里面的属性值是什么,后台代码接收的参数也必须以一一对应。
- 后台的接收函数必须有[WebMethod]标签。
- 序列化是一个很好的数据预处理方式。
- Ajax是异步传值的。
以上所讲都是前台后台之间的数据交互,如果页面之间存在交互时改怎么办呢?
前台js示例代码:
window.open("../statisticsPage/statisticsPage.aspx?voteid=" + id);
这里传了一个voteid的值。打开另一个网页时,网页的URL后面会有 ”?voteid=** “的显示,说明这里用的是get方法传给另一个页面的,这时候,我们既可以在另一个页面的后台用上面所说的get接收方法来接收,也可以用下面的方法来接收数据。
另一个界面的js代码:
//获取URL中参数param的值function getParameter(val) { var uri = window.location.search; var re = new RegExp("" + val + "\=([^\&\?]*)", "ig"); return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);}getParameter(voteid)//这里就是voteid的值
这里用的是一个正则表达式来匹配URL里面的?后面的变量值。
0 0
- WEB页面的数据交互
- WEB页面信息的交互
- 第八讲 WEB页面信息的交互
- php与web页面的交互
- web页面交互注意的问题
- luci与页面的数据交互
- web 前后台数据交互的方式
- web 前后台数据交互的方式
- web前后台数据交互的方式
- Android_Android与Web端的数据交互
- Web Service 数据交互
- 与Web页面的交互之迭代器的使用
- PHP-与Web页面交互
- 利用TDC组件实现对WEB页面的交互操作
- 做一个Web页面上交互的ActiveX Dll
- 利用TDC组件实现对WEB页面的交互操作
- LoadRunner与Web页面交互的两个层次
- PHP学习----PHP与web页面的交互
- Java中事务的处理
- Centos6.5使用yum安装mysql——快速上手必备
- 利用反射机制获取Enum属性的name或者value
- SDK 提供的命令行工具
- android调用系统播放器播放视频-小坑一个
- WEB页面的数据交互
- UE4 在C++中创建事件相关说明
- Sync Session Failed to Start(手机和电脑同步失败)
- swift 3.0 单例
- 控件:进度条ProgressBar
- dede首页调用全站tag
- 用Itext生成word文档
- 浏览器缓存详解详细说明
- 手把手教你写交互设计文档