前端jsp与后端servlet传值(java web)
jsp中js使用jQuery封装好的 $.ajax()方法与服务器进行交互
var jsonStick = this.strtoJson();
$.ajax({
type : 'post',//不起作用 要用jsonP
url : 'controllerServlet',//要传输数据对象的地址
contentType : "application/x-www-form-urlencoded",//转化为form表单传值
data : {
"js" : jsonStick
}, //前面的js是服务端获取的ID 后面的jsonStick是处理后的json对象
cache : false,
dataType : 'text',//这个关系到你能不能正确接收到servlet 响应的数据
async : false, //因为ajax默认是异步调用的,所以得到的返回值是空值,要得到值必须改成同步:async: false
success : function(data) {
//console.log(data);
flag = data; //采用全局变量flag接收数据(data未作处理)
},
error : function(msg) { //ajax请求失败后触发的方法
//弹出错误信息
console.log(msg);
}
});
//数据处理函数
function() {
//'':this.note.name,
var arr = [];
var json = {};
json.note_id = this.id
json.note = this.text;
json.left = this.left;
json.top = this.top;
json.zindex = this.zIndex;
if (this.sqlId == null) {
this.sqlId = 0;
}
json.sqlId = this.sqlId;
arr.push(json);
var jsonStick = JSON.stringify(arr);//格式化json数据
return jsonStick;
}
servlet接收 处理 响应
protected void doGet(.........){
String js = request.getParameter("js");//接收jsp传过来的数据
JSONArray json = JSONArray.fromObject(js);//对数据进行数组转化
JSONObject jsonOne = json.getJSONObject(0);//获取确定的json对象
boolean flag = true;
PrintWriter out = response.getWriter();
out.print(flag);//将flag传给jsp
out.close();
}
jsp接收响应 并对数据进行处理
$.ajax({
type : 'post',
url : 'sendServlet',
cache : false,
dataType : 'json',
async : false, //因为ajax默认是异步调用的,所以得到的返回值是空值,要得到值必须改成同步:async: false
success : function(data) {
//console.log(data.result.note)
for (var i in data) {
console.log(data[i])
note = new Note();
note.id = data[i].note_id;
note.text = data[i].note;
note.timestamp = new Date().getTime();
note.left = data[i].left;
note.top = data[i].top;
note.zIndex = data[i].zindex;
}
},
error : function(msg) { //ajax请求失败后触发的方法
//弹出错误信息
console.log(msg);
}
});
中间用到的jar包以及js
https://pan.baidu.com/s/1XEOkM1as_10I92WAzooBuA
密码:gix8

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
JavaScript 输出
JavaScript 没有任何打印或者输出的函数。JavaScript 显示数据 JavaScript 可以通过不同的方式来输出数据: 使用 window.alert() 弹出警告框。 <script> window.alert(5 + 6); </script> 使用 document.write() 方法将内容写到 HTML 文档中。 <script> document.write(Date()); </script> 使用 innerHTML 写入到 HTML 元素。 <p id="demo">我的第一个段落</p> <script> document.getElementById("demo").innerHTML = "段落已修 改。"; </script> 使用 console.log() 写入到浏览器的控制台。 <script> a = 5; b = 6; c = a + b; console.log(c); </script>
-
下一篇
JavaScript高级程序设计学习(六)之设计模式
每种编程语言都有其自己的设计模式。不禁让人疑惑设计模式是用来做什么?有什么用? 简单的说,设计模式是为了让代码更简洁,更优雅,更完美。 同时设计模式也会让软件的性能更好,同时也会让程序员们更轻松。设计模式可谓是编程界的“葵花宝典”或“辟邪剑法”。如果一旦练成,必可在编程界中来去自如,游刃有余。 下面进入正题 (1)工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程(本书后 面还将讨论其他设计模式及其在 JavaScript中的实现)。考虑到在 ECMAScript中无法创建类,开发人员 就发明了一种函数,用函数来封装以特定接口创建对象的细节。 <html> <meta charset="utf-8"> <head> <script> function createPerson(name,age,job){ var o = new Object(); o.name=name; o.age=age; o.job=job; o.sayName=function(){ alert(this.name); };...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- MySQL数据库在高并发下的优化方案
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- MySQL8.0.19开启GTID主从同步CentOS8
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7,8上快速安装Gitea,搭建Git服务器