`
liufei.fir
  • 浏览: 690117 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JQuery可编辑表格提交到数据库

阅读更多
1.EditTable.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="java.sql.*"%>
<html>
  <head>
    <title>EditTable</title>
    <link rel="stylesheet" type="text/css" href="css/editTable.css">
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript" src="js/editTable.js"></script>
  </head>
  <body>
    <table>
     <thead>
      <tr>
       <th colspan="3">可编辑的表格</th>
    </tr>
     </thead>
     <tbody>
      <tr>
       <th>学号</th>
       <th>姓名</th>
       <th>年龄</th>
      </tr>
      <%
       String sno,name;
       int age = 0;
       Class.forName("com.mysql.jdbc.Driver");
       Connection con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","");
       Statement stmt = con.createStatement();
       ResultSet rs = stmt.executeQuery("select sno,name,age from student");
       while(rs.next()){
        sno = rs.getString("sno");
        name = rs.getString("name");
        age = rs.getInt("age");
      %>
      <tr>
       <td id="sno"><%=sno%></td>
       <td id="name"><%=name %></td>
       <td id="age"><%=age %></td>
      </tr>
      <%}%>           
     </tbody>    
    </table>
    <div id="result"></div>
  </body>
</html>
2.editTable.css

table{
border:1px solid black;
border-collapse:collapse;
width:400px;
}
table td{
border:1px solid black;
width:33%;
}
table th{
border:1px solid black;
width:33%;
}
tbody th{
background-color:#7998DF;
}
#result{
color:red;
}

3.editTable.js

//在页面加载时,让所有的td拥有一个点击事件
$(document).ready(function(){
  $("tbody tr:even").css("background-color","#ECE9D8");
  var tds = $("tbody td");
  tds.click(tdClick);
});

function tdClick(){
  //保存当前的td节点
    var td = $(this);
    //取出当前td节点的文本内容并保存起来
    var text = td.text();
    //清空td里面的内容
    td.html("");//也可以是td.empty();
    //建立一个文本框
    var input = $("<input>");
    //设置文本框的值是刚保存起来的
    input.attr("value",text);
    input.width(td.width()-1);
    input.height(td.height());
    //将文本框加入到td中
    td.append(input);
    //让文本框里的文字高亮选中
    var inputDom = input.get(0);
    inputDom.select();
    //取消td的点击事件
    td.unbind("click");
      //让文本框响应键盘事件
    input.keyup(function(event){
//      var myEvent = event || window.event;
//      var keyCode = myEvent.keyCode;
      var keyCode=event.which;
      //判断是否回车键按下
      if(keyCode == 13){
        //获得文本框
        var inputNode = $(this);
//        //保存文本框的值
//        var inputText = inputNode.val();
//        //获得td节点
//        var tdNode = inputNode.parent();
//        //设置td的值
//        tdNode.html(inputText);
//        //让td重新拥有点击事件
//        tdNode.click(tdClick);
        td.html(inputNode.val());
        var tmp = td;
//  alert(td.prev().text());
        var option = td.attr("id");
//        alert(td.attr("id"));
//  alert(td.parents("tr").children("td").eq(0).text());
        var sno = td.parents("tr").children("td").eq(0).text();
      
        var value = inputNode.val();
 
  $.get("http://localhost:8080/EditTable/UpdateStudent?sno="+encodeURI(sno)+"&option="+encodeURI(option)+"&"+option+"="+encodeURI(value),null,function(response){
    $("#result").html(response);
  });
        td.click(tdClick);
      }
      else if(keyCode == 27){
       td.html(text);      
      }
    });
    input.blur(function(){
      var inputNode = $(this);
      var inputText = inputNode.val();
      var tdNode = inputNode.parent();
      tdNode.html(inputText);
      tdNode.click(tdClick);
    });
  }

4.DBcon.java


package com.db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

class DBCon{
    private static Connection con = null;
    public DBCon(){
   }

    public synchronized static Connection getConnection()
    {
        try{
          Class.forName("com.mysql.jdbc.Driver");     //加载MYSQL JDBC驱动

        }catch (ClassNotFoundException e) {         
              e.printStackTrace();
        }
       try{
            if(con == null)
            con = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
         System.out.println("Connect Successfully");
        }catch(SQLException e1){
        e1.printStackTrace();
       }
        return con;
    }
}

5.CRUD.java

package com.db;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class CRUD {

       public static int updateStudent(String sno, String option,String value){
        int flag = 0;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        String sql = "update student set " + option + "=? where sno=?";
        try{
         pstmt = DBCon.getConnection().prepareStatement(sql);            
         pstmt.setString(1,value);
         pstmt.setString(2,sno);
         flag =pstmt.executeUpdate();         
        }catch(SQLException e){
         e.printStackTrace();
        }
        return flag;
        }

}
6.UpdateStudent.java

public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html;charset=UTF-8");
  response.setCharacterEncoding("UTF-8");
  PrintWriter out = response.getWriter();
  String sno = request.getParameter("sno");
  String option = request.getParameter("option");
  String value = request.getParameter(option);
  int flag=CRUD.updateStudent(sno, option, value);
  if(flag > 0)
   out.println("更新成功!");
  else
   out.println("更新失败!");
  out.flush();
  out.close();
}
分享到:
评论

相关推荐

    jquery可编辑表格插件

    "jquery可编辑表格插件"就是基于jQuery的一种工具,旨在为网页中的表格提供动态编辑功能,使得用户可以直接在表格中进行数据的增删改查,极大地提升了交互性和用户体验。这种插件在数据展示和管理场景中尤其实用,...

    jQuery实现编辑表格同时通过servlet对后台数据库进行更新

    通过以上步骤,我们就实现了使用jQuery编辑表格并在用户保存更改时,通过Servlet将这些更改同步到后台的ORACLE数据库。这个过程涉及到前端的事件处理、Ajax通信,以及后端的Servlet和数据库操作,展示了Web应用中...

    jquery可编辑表格

    在“jquery可编辑表格”这个主题中,我们将深入探讨如何使用jQuery来创建和管理用户可编辑的表格,这对于数据输入和展示场景非常实用。jQuery的选择器和常用方法是实现这一目标的关键。 首先,jQuery选择器是其强大...

    Jquery 可编辑的表格

    **jQuery 可编辑表格详解** 在网页开发中,表格是一种常用的数据展示和操作方式。jQuery 是一个强大的JavaScript库,它可以简化HTML文档遍历、事件处理、动画和Ajax交互。结合jQuery,我们可以创建功能丰富的可编辑...

    jquery可编辑性表格

    **jQuery可编辑表格详解** 在Web开发中,表格是一种常用的数据展示方式,而jQuery可编辑表格则让用户体验更上一层楼。它允许用户直接在表格内进行数据编辑,无需跳转页面或刷新,大大提升了交互性和效率。jQuery库...

    js可编辑的网页表格,并可将填写单元格内容保存到MySQL数据库,再读取到另一表格中

    在本项目中,我们主要探讨如何使用JavaScript创建一个可编辑的网页表格,并通过PHP与MySQL数据库进行交互,实现数据的保存和读取。这是一项基本的前端与后端结合的应用,对于网页应用开发来说是非常基础且重要的技能...

    JQuery实现可编辑的表格.rar

    通过以上步骤,我们可以创建一个功能完备、用户体验良好的可编辑表格。JQuery的强大功能使得这个过程变得相对简单,但要注意在实际项目中还需要考虑代码组织、模块化和测试等多方面因素,以确保代码的可维护性和稳定...

    jquery easy ui edatagrid 动态编辑表格 例子

    在本文中,我们将深入探讨jQuery Easy UI中的`edatagrid`组件,以及如何实现动态编辑表格,特别是下拉框的联动功能。`edatagrid`是jQuery Easy UI库中的一个强大工具,它扩展了基本的`datagrid`功能,提供了更丰富的...

    jQuery-可编辑表格实例

    本实例重点在于“jQuery-可编辑表格”,这通常指的是使用jQuery来创建用户可以直接在前端编辑表格数据的功能。这种功能极大地提高了用户与网页交互的便捷性和效率,尤其是对于数据管理和展示的场景。 首先,要实现...

    JQuery实现可编辑表格

    这篇名为“JQuery实现可编辑表格”的博客文章可能深入探讨了如何利用jQuery的功能来创建一个用户可以编辑的表格。在网页设计中,这种功能常用于数据输入或管理应用程序,允许用户直接在表格内修改数据而无需跳转到...

    可编辑的表格:jQuery+PHP实现实时编辑表格字段内容

    1. **实时编辑**:当用户点击表格中的某个单元格时,jQuery可以通过添加CSS类或属性改变该单元格的样式,使其变为可编辑状态。例如,可以添加一个`contenteditable`属性使单元格变为文本输入框。 2. **事件监听**:...

    jquery 图表插件可编辑表格生成走势图jquery 图表统计

    本文将详细探讨与“jquery 图表插件可编辑表格生成走势图jquery 图表统计”相关的知识点,帮助你更好地理解和应用这些技术。 首先,jQuery图表插件是用于在网页上创建各种可视化数据的工具,它们可以将复杂的数据...

    jquery表格可编辑修改表格里面的数值

    针对“jquery表格可编辑修改表格里面的数据”这个主题,我们将深入探讨如何利用jQuery实现这样的功能。 首先,要创建一个可编辑的表格,我们需要一个基本的HTML结构,如下所示: ```html 姓名 年龄 城市 ...

    可编辑的表格:jQuery+PHP+jeditable实现实时编辑表格字段内容,下拉、日历等多种表单演示

    在这个案例中,当用户编辑表格内容后,jQuery会使用Ajax发送POST请求到PHP脚本,PHP处理请求并更新数据库,同时返回响应,更新表格显示。 6. **HTML和CSS**:HTML构建表格结构,CSS用于美化表格样式。使用适当的CSS...

    jquery php+mysql 表格双击可编辑,表单失去焦点自动提交保存数据

    "jquery php+mysql 表格双击可编辑,表单失去焦点自动提交保存数据"是一个典型的例子,展示了如何结合前端技术和后端技术实现高效的数据管理。以下是这个项目涉及的关键知识点: 1. **jQuery**:jQuery是一个强大的...

    JQuery实现可编辑的表格

    在本文中,我们将深入探讨如何使用JQuery来创建一个可编辑的表格,这对于网页应用程序的交互性和用户体验至关重要。...通过以上步骤,我们可以创建一个功能完备且易于维护的可编辑表格,提升用户的在线编辑体验。

    可编辑的表格

    在实际应用中,使用可编辑表格的前端开发需要注意以下几点: 1. **数据同步**:确保用户在表格内的编辑能实时反映到后台数据库,通常通过AJAX异步请求实现。 2. **错误处理**:当用户输入无效数据时,需要有明确的...

    jqueryTable编辑的实现

    在`jQuery Table`编辑场景中,`jQuery`用于添加交互性,使得用户能够轻松地编辑表格内容。 要实现鼠标点击表格单元格即可编辑的功能,你需要对表格的每个单元格(`td`元素)添加`click`事件监听器。当用户点击单元格...

    WebTableSetup(jsp网页可编辑表格).rar

    【标题】"WebTableSetup(jsp网页可编辑表格)"是一个涉及到网页开发技术的主题,主要聚焦在如何在JSP(JavaServer Pages)环境中创建一个可编辑的表格。JSP是一种动态网页技术,允许开发者将Java代码嵌入到HTML页面中...

Global site tag (gtag.js) - Google Analytics