初学b/s编程,花费了许多时间,进度颇慢! 不过终于完成了一个简单的例子:

jsp代码

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%--@elvariable id="books" type="java.util.List<com.lzf.mt.Books>"--%>
<%--@elvariable id="book" type="com.lzf.mt.Books"--%>
<html>
<head>
<H2>This is a test SCRIPT!</H2>
<script type="text/javascript" src="/file/js/jquery-3.3.1.js"></script>
<script type="text/javascript">
$(document).ready(
function(){
$("button#btn1").click(
function(){
if ($("h2").is(":hidden")){
$("h2").show();
}
else{
$("h2").hide();
}
}
);
});
</script>
</head>
<body>
<h2>您好!</h2>
<c:choose>
<c:when test="${fn:length(books) == 0}">
<i>没有书本</i>
</c:when>
<c:otherwise>
<c:forEach items="${books}" var="book">
ID:&nbsp;${book.id}:
<a href="<c:url value="/books/viewone/${book.id}" />"><c:out value="${book.title}"/></a><br />
<a href="javascript:void(0)" class="none" onmousemove="getsingleBook(${book.id})"><c:out value="${book.title}"/></a>
<br />
</c:forEach>
</c:otherwise>
</c:choose>
<h2>当前查看的书本:${book.title}</h2>
ISBN:<input type="text" class="singleook" id="isbn" readonly="readonly" /><br/>
AUTOR:<input type="text" class="singleook" id="author" readonly="readonly" /><br/>
PRICE:<input type="text" class="singleook" id="price" readonly="readonly" /><br/>
PUB: <input type="text" class="singleook" id="publisher" readonly="readonly" /><br/>
<button type="button" id="btn1">Click me</button>
<button type="button" id="btn2" onclick="setValueTest()">设置值测试</button> <script type="text/javascript">
<!--为了显示下 -->
function getsingleBook(bookid)
{
$.ajax({
url:"viewbook",
data:{id:bookid},
success:function(result){
document.getElementById("isbn").value=result.isbn;
document.getElementById("author").value=result.author;
document.getElementById("price").value=result.price;
document.getElementById("publisher").value=result.publisher;
}
});
} function setValueTest(){
document.getElementById("isbn").value="good";
} </script> </body>
</html>

cotroller代码

package com.lzf.mt;

import java.util.HashMap;
import java.util.List;
import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView; import com.lzf.mt.Books;
import com.lzf.mt.Ibooks; @Controller
@RequestMapping("/books")
public class BookController { @Autowired
@Qualifier("Primarybookservice")
Ibooks bookservice; /**
* 返回单个书本的信息
* @param request
* @return
*/
@RequestMapping("/viewbook")
@ResponseBody
public Map<String,Object> getMailDetailById(HttpServletRequest request){ long bookid=Long.valueOf(request.getParameter("id"));
Books book= bookservice.getByPk(bookid); Map<String,Object> bookinfo = new HashMap<String, Object>(); bookinfo.put("isbn", book.getIsbn());
bookinfo.put("author", book.getAuthor());
bookinfo.put("price", book.getPrice());
bookinfo.put("publisher", book.getPublisher()); return bookinfo; } @RequestMapping("/viewall")
public ModelAndView listallBooks(Map<String, Object> model){
ModelAndView mv=new ModelAndView();
List<Books> books= bookservice.getAllBooks();
model.put("books",books);
mv.setViewName("book");
return mv; }
/**
* 如何才能够看到原来的数据,而仅仅是刷新当前的资料!
* @param model
* @param id
* @return
*/
@RequestMapping("/viewone/{bookid}")
public ModelAndView listallBooks(Map<String, Object> model,
@PathVariable("bookid") long id){
ModelAndView mv=new ModelAndView();
Books book= bookservice.getByPk(id);
model.put("book",book);
mv.setViewName("book");
return mv; } }

剩下的就是慢慢熟练罢了!

jsp+spring+jquery+ajax的简单例子的更多相关文章

  1. php+jquery+ajax+json简单小例子

    直接贴代码: <html> <title>php+jquery+ajax+json简单小例子</title> <?php header("Conte ...

  2. Django1.7+JQuery+Ajax集成小例子

    Ajax的出现让Web展现了更新的活力,基本所有的语言,都动态支持Ajax与起服务端进行通信,并在页面实现无刷新动态交互. 下面是散仙使用Django+Jquery+Ajax的方式来模拟实现了一个验证 ...

  3. jquery ajax json简单的分页,模拟数据,没有封装,只显示原理

    简单的分页,模拟数据,没有封装,显示原理,大家有兴趣可以自己封装,这里只是个原理过程,真正的分页也差不多是这个原理,只是请求数据不太一样,html部分: <!TOCTYPE HTML> & ...

  4. jQuery.ajax()的一些例子

    例子: Example: 保存数据到服务器,成功时显示信息. 1 2 3 4 5 6 7 $.ajax({ method: "POST", url: "some.php& ...

  5. js canvas压缩图片和jQuery ajax上传图片简单demo

    原来用的插件,里面东西太乱了,一会jq,一会原生js,本来原生js就不熟,看起来更难受,而且感觉好多东西都是没用的,而且后端php转存文件一直不是很熟悉,正好一起整理一下.就是很简单的一个demo,如 ...

  6. JQuery Ajax 的简单使用

    简单判断用户名存在不存在,如果数据库存在此用户名,提示不能注册 前台代码如下: <!DOCTYPE html> <html lang="en"> <h ...

  7. Jquery ajax 完整实例子1

    $ajax请求--------------------------------- var $personWifePs=$("#wife-money tbody tr"); var ...

  8. Ajax的简单例子——PHP

    PHP PHP是一种创建动态交互性站点的服务器端脚本语言 PHP能够生成动态页面内容 PHP能够创建.打开.读取.写入.删除以及关闭服务器上的文件 PHP能够接收表单数据 PHP能够发送并取回cook ...

  9. jquery ajax请求后台 的简单例子

    jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax ...

随机推荐

  1. HTML 5 表单相关元素和属性

    HTML使用表单向服务器提交请求,表单.表单控件的主要作用是收集用户输入,当用户提交表单时,用户输入内容将被作为请求参数提交到远程服务器.因此,在Web编程中,表单主要是用于收集用户输入的数据,在需要 ...

  2. Exchange 域用户无权管理邮箱

    将需要管理邮箱的域用户添加至“Microsoft Exchange Security Groups”用户组即可.

  3. html 表格的一些属性设置

    第一种:单元格跨行 第二种:单元格间距 第三种:带有标题的表格 第四种:带标题的表格

  4. jvm 的性能调优

    一个描述的比较生动的博客:JVM内存区域划分Eden Space.Survivor Space.Tenured Gen,Perm Gen解释 地址:https://www.cnblogs.com/sg ...

  5. ASP.NET中引用dll“找不到指定模块"的完美解决办法 z

    DllImport是System.Runtime.InteropServices命名空间下的一个属性类,其功能是提供从非托管DLL导出的函数的必要调用信息.DllImport属性应用于方法,要求最少要 ...

  6. 初涉node.js做微信测试公众号一路填坑顺便发现个有趣的其他漏洞

    [微信测试公众号] 半年前耍着玩搭起来的“微信简历”,是LAMP版的,很皮毛. 微信的官方文档在这 http://mp.weixin.qq.com/wiki/index.php 1.获取access ...

  7. 用AutoHotkey调整Windows音量

    我用了[右Alt]+方向键来调整音量:Alt+上下键,音量调整幅度为5,如果再增加个右Ctrl,音量调整幅度为1. Alt+左键为静音,Alt+右键为最大音量. >!Up:: ;音量+ < ...

  8. June 13th 2017 Week 24th Tuesday

    There are no regrets in life, just lessons. 人生中没有后悔,只有教训. Some people can learn from their past mist ...

  9. 如何证明CRM WebClient UI上的应用是有状态(Stateful)的

    随便找一个在CRM WebClient UI里会被频繁调用到的函数,在函数里创建一个隐式增强,打印当前的会话ID. 不关闭浏览器,在浏览器里不断做操作,可以观察到不管做任何操作,每次断点出发后,打印出 ...

  10. BZOJ2836:[SHOI2012]魔法树(树链剖分)

    Description Input Output Sample Input 4 0 1 1 2 2 3 4 Add 1 3 1 Query 0 Query 1 Query 2 Sample Outpu ...