报错No mapping found for HTTP request with URI、实现蒙纱,弹出对话框利用load 、编码问题、 jQ的data绑定数据等等遇到的问题

写完报错No mapping found for HTTP request with URI

当时是写了一个请求,但是报错404.什么都看了。就是没错。百度解决

解决:Spring配置文件中添加(要Spring3.0.5以上才可以)
<mvc:default-servlet-handler/>
因为走的是DispatcherServlet。设置的*.do 找不到就会报404错误。

为什么没有找到。。。。只好添加这个实现

登录成功,进入主界面,显示登录用户的笔记本列表

大概流程:
客户端处理
客户端:主要是因为login.html登录成功了后设置了cookie。在cookie里面添加了uid。存在了浏览器中。然后让其跳转到edit.html页面。edit.html页面开始就先获取cookie中的uid值。然后向服务器请求。通过userId来获取data数据
a.发请求
主界面发送请求
$(function(){})//页面载入执行发送请求
提交数据 :用户ID 从cookie取 登录成功添加cookie,存储id信息
b.回调函数

服务端处理

/notebook/loadbooks.do
–>DispatcherServlet
–>HandlerMapping
–>LoadBooksController.execute
–>NoteBookService
–>NoteBookDao–>cn_notebook
–>返回NoteResult JSON数据,显示笔记本列表

添加和删除cookie出错~~~弄了个cookieutil.js

function getCookie(objName) {
     //  var arrStr = document.cookie.split("; ");
     for ( var i = 0; i < arrStr.length; i++) {

          var temp = arrStr[i].split("=");
          if (temp[0] == objName)
              return unescape(temp[1]);
     }
     return "";
}


function addCookie(objName, objValue, objHours) {
     var str = objName + "=" + escape(objValue);

     if (objHours > 0) {
          var ms = objHours * 3600 * 1000;
          var date = new Date();
          date.setTime(date.getTime() + ms);
          str += "; expires=" + date.toGMTString();
     }
     document.cookie = str;
}


function setCookie(name, value) {

     var exp = new Date();
     exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
     document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}


function delCookie(name) {
     var exp = new Date();
     exp.setTime(exp.getTime() - 1);
     var cval = getCookie(name);
     if (cval != null) {
          document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
     }
}

加载笔记列表(单击某个笔记本,加载笔记信息显示)

客户端:
a.发送请求
笔记本li单击。发送ajax请求
提交的数据,就是点击li的绑定的bookId值
b.回调函数
获取服务器返回的json,将笔记信息显示成笔记列表
/note/loadnotes.do
–>DispatcherServlet
–>HandlerMapping
–>LoadNotesController.execute
–>NoteService
–>NoteDao–>cn_note
返回NoteResult

jQ如何绑定未来出现的元素

使用jQ.on();

  //给现有或未来匹配元素绑定事件
              $("#book_list").on("click","li",function(){
              alert("~~~");
                   });

执行~,并没有 jQ对象.on(“事件类型”,”选择器”,function)
选择器是从这个jQ对象里面的找
嗯,写了没有找到!!!无奈,检测,研究。发现我绑定数据的地方出错

改为

              //将s_li字符串转成jQ对象,藏bookId;
                                      var $li = $(s_li);
                                           $("#book_list").append($li);
                                           $li.data("bookId",bookId);

之前是

            //将s_li字符串转成jQ对象,藏bookId;
                                      var $li = $(s_li);
                                           $("#book_list").append(s_li);
                                           $li.data("bookId",bookId);

添加的不是Jq对象!!!!所以检查不到数据~~~

实现蒙纱

只要先写个空的div。设置其样式。然后设置为hide()。调用的时候设置为show()就可以了。

弹出对话框利用load

怎么弹出一个有很好样式的对话框。
先写一个div。空的
然后利用jQ的load方法让这个$(div)load(url)来调用。就可以将请求的html载入这个div~就实现了要注意编码问题!!!

将写js函数抽出。

然后调用的时候,参数是函数名!不要加括号

$("#book_list").on("click","li",loadnotes);

创建笔记本

然后创建笔记本

客户端
发送请求,单击创建按钮,发送请求
提交数据: 笔记本名称,用户ID
回调函数
成功:关闭对话框,添加一个笔记本li
失败:给出提示信息

服务端:
/notebook/add.do

–>DispatcherServlet
–>HandlerMapping
–>AddBookController.execute
–>NoteBookService
–>NoteBookDao–>cn_notebook(插入)
返回 NoteResult JSON

其实大体流程都是一样的~
涉及到javascript的时候用eclipse就真的很容易出错。。。

实现效果
这里写图片描述

云笔记的登录与显示登录的笔记本。点击显示笔记本列表我写的笔记链接
https://app.yinxiang.com/shard/s56/nl/12287602/993f6d79-eea2-4a33-9d7b-70a17aad0bc1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值