`
Sharpleo
  • 浏览: 576241 次
  • 性别: Icon_minigender_1
  • 来自: newsk
社区版块
存档分类
最新评论

jquery 操作表格

    博客分类:
  • js
阅读更多
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script src="jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="sharpcodetable.js" type="text/javascript"></script>
<title>无标题文档</title>
<style type="text/css">
.headrow{
height:26px;
background-image:url(tb-bg.gif);
background-repeat:repeat-x;
text-align:center;
}
.target_table{
border:solid 1px black;
margin-top:20px;
}
.target_td{
border-right:solid 1px black;
}
.tartget_btn{
background-image:url(tb-bg.gif);
background-repeat:repeat-x;
width:120px;
font-family:"微软雅黑";
text-align:center;
border:solid 1px black;
cursor:pointer;
}
</style>
</head>

<body >
<center>
<input type="button" value="复制一行" class="tartget_btn" onclick="copyarow();" />
<input type="button" value="删除一行" class="tartget_btn" onclick="deleterows();" />
<input type="button" value="增加一行" class="tartget_btn" onclick="addarow();" />
<input type="button" value="删除所有行" class="tartget_btn" onclick="deleteallrow();" />
<input type="button" value="加载" class="tartget_btn" onclick="loadjsondata();" />
<input type="button" value="生成json字符" class="tartget_btn" onclick="buildJsonStr();" />
X:<input id="myx"/>Y:<input id="myy"/>
<table  class="target_table" cellpadding="0" cellspacing="0" id="mytable" onmousemove="locationpoint(event);">
	<tr class="headrow">
		<td width="100" >ID</td>
		<td width="200">Title</td>
		<td width="300">Remark</td>
	</tr>
	<tr>
		<td class="target_td">001</td>
		<td class="target_td">菜单</td>
		<td>网站菜单</td>
	</tr>
	<tr>
		<td class="target_td">002</td>
		<td class="target_td">图片</td>
		<td>上传图片</td>
	</tr>
</table>
</center>
</body>
</html>

// JavaScript Document
var currentselectrow;//当前选中行
var temprow;//临时行
function targetrowclick(obj)
{
    if(currentselectrow == null)
    {
        obj.style.backgroundColor = "#d0d0d0";
        currentselectrow = obj;
    }
    else
    {
        if(currentselectrow != obj)
        {
            obj.style.backgroundColor = "#d0d0d0";
            currentselectrow.style.backgroundColor = "white";
            currentselectrow = obj;
        }
    }
}

function targetrowhover(obj)
{
    obj.style.cursor = "pointer";
}
$(document).ready(function()
{
    var rowsize = $("#mytable tr").length - 1; //表格行数  除去表头
    $("#mytable tr:not(:first)").bind(
    {
click: function ()
        {
            targetrowclick(this);
        },
mouseover: function()
        {
            targetrowhover(this);
        }
    });


    $("#mytable tr:not(:first)").each(function()
    {
        $("td", this).bind(
        {
dblclick: function ()
            {
                edit(this);
            }
        }

        )


    });
	temprow= $("#mytable tr:last");
	

});
//复制一行
function copyarow()
{
    if(currentselectrow == null)
    {
        alert("请先选择一行!");
    }
    else
    {
        $(currentselectrow).clone(true).appendTo("#mytable");
        $("#mytable tr:last").css("backgroundColor", "white");
    }
}
//删除一行
function deleterows()
{
    if(currentselectrow == null)
    {
        alert("请先选择要删除的一行!");
    }
    else
    {
        $(currentselectrow).remove();
        currentselectrow = null;
    }
}
//增加一行
function addarow()
{

    var newrow = $(temprow).clone(true);
    $(newrow).each(function()
    {
        $("td:eq(0)", this).html("&nbsp;0")
		$("td:eq(1)", this).html("&nbsp;1")
		$("td:eq(2)", this).html("&nbsp;2")
    });
    $("#mytable").append(newrow);

}
//删除所有行
function deleteallrow()
{
    $("#mytable tr:not(:first)").remove();
}
//编辑
function edit(obj)
{
    if($(obj).children().length == 0)
    {
        var tdwidth = obj.offsetWidth;
        $(obj).html("<input  value='" + obj.innerText + "' style='width:" + tdwidth + "px;'/>");
        $(obj).children(0).focus();
        $(obj).children(0).blur( function ()
        {
            obj.innerHTML = $(obj).children(0).val() + "&nbsp;";
        } );
    }

}
//根据json对象添加行
function loadjsondata()
{
	var jsondata=eval([{"a":"1","b":"2","c":"3"},{"a":"a","b":"b","c":"c"},{"a":"f","b":"ff","c":"fff"}]);
	for(var i=0;i<jsondata.length;i++)
	{
	var newrow = $(temprow).clone(true);
    $(newrow).each(function()
    {
        $("td:eq(0)", this).html(jsondata[i].a)
		$("td:eq(1)", this).html(jsondata[i].b)
		$("td:eq(2)", this).html(jsondata[i].c)
    });
    $("#mytable").append(newrow);
	}
}

function locationpoint(event)
{
	$("#myx").val(event.clientX);
	$("#myy").val(event.clientY);
}
//生成json数据
function buildJsonStr()
{
	var jsonstr="[";
	var datarows=$("#mytable tr:not(:first)");
	var datalength=datarows.length;
	$(datarows).each(function(i,n)
    {
		
		if(i==datalength-1)
		{
			jsonstr+="{'a':'"+$("td:eq(0)", this).text()+"',";
			jsonstr+="'b':'"+$("td:eq(1)", this).text()+"',";
			jsonstr+="'c':'"+$("td:eq(2)", this).text()+"'}";
		}else
		{
			jsonstr+="{'a':'"+$("td:eq(0)", this).text()+"',";
			jsonstr+="'b':'"+$("td:eq(1)", this).text()+"',";
			jsonstr+="'c':'"+$("td:eq(2)", this).text()+"'},";
		}
		//alert( $("td:eq(0)", this).html());
      // alert($("td:eq(1)", this).html());
		//alert($("td:eq(2)", this).html());
		
    });
	jsonstr+="]";
	alert("生成的josn字符串是:"+jsonstr);
}


分享到:
评论

相关推荐

    JQuery操作表格(附源码)实现tr上下移动。

    以上就是使用jQuery操作表格的基本方法,实际应用中可能需要根据具体需求进行调整和优化。提供的源码应包含完整的HTML结构、CSS样式以及上述JavaScript功能,以便于在实际项目中直接使用或参考。对于更复杂的功能,...

    jquery操作表格隔行,滑动,点击,变色

    提供的`jquery操作表格.html`文件应该包含了这些功能的示例代码,通过查看和分析这个文件,你可以更好地理解并掌握这些技巧。在开发过程中,记得利用jQuery的文档和社区资源,以便解决可能出现的问题和扩展更多功能...

    使用 Jquery 操作表格

    本教程将深入讲解如何利用 jQuery 来操作表格,以实现更高效、更简洁的代码。 首先,理解 HTML 表格的基础结构至关重要。表格由 `&lt;table&gt;` 标签定义,`&lt;tr&gt;` 代表表格行,`&lt;th&gt;` 用于表头,而 `&lt;td&gt;` 用于单元格...

    jquery操作表格增加删除

    本文将详细讲解如何使用jQuery来操作表格,实现增删功能。 一、表格的基本结构 HTML表格由`&lt;table&gt;`标签定义,其中包含`&lt;tr&gt;`(行)标签,`&lt;th&gt;`(表头)和`&lt;td&gt;`(数据单元格)标签。例如: ```html 姓名 ...

    jquery操作表格

    在“jquery操作表格”的主题中,我们将深入探讨如何使用jQuery来高效地操纵HTML表格,实现诸如数据获取、动态更新、排序、筛选等功能。 一、jQuery选择器与表格元素 jQuery的选择器是其核心功能之一,它允许我们...

    JQuery操作表格.rar

    以上就是使用jQuery操作HTML表格的一些基础知识。通过熟练掌握这些技巧,开发者能够轻松实现动态的、交互式的表格功能,提升用户体验。在实际项目中,根据具体需求,可以进一步扩展和定制这些方法,实现更加复杂的...

    超级简单的jquery操作表格方法

    ### 知识点:简单使用jQuery操作表格行与列 jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它通过使用 CSS 选择器简化了 HTML 文档遍历和操作、事件处理、动画和 Ajax 交互。本文将介绍如何使用 jQuery 来...

    jquery 操作表格实现代码(多种操作打包)

    根据提供的文件信息,我们可以得出关于jquery操作表格实现多种操作的知识点如下: 1. jQuery库在操作HTML表格时的便利性:文件中提到了对表格的操作需求,包括添加、删除行数据和数据行的上下移动。jQuery作为一个...

    Jquery导出表格

    1. **jQuery操作表格**:在前端,jQuery可以用于获取HTML表格的数据。例如,我们可以使用`$('table').find('tr')`选择所有的表格行,然后进一步遍历每一行的单元格获取数据。这一步骤是准备将表格数据发送到后端的...

    jquery表格操作实例

    本篇文章将深入探讨jQuery在表格操作方面的应用实例,这对于前端开发人员来说是极其重要的技能。 首先,我们需要理解jQuery是如何选择和操作HTML元素的。使用jQuery的选择器,如`$("#tableId")`,可以轻松地选取...

    jQuery操作表格(table)的常用方法、技巧汇总

    以下是一些关于jQuery操作表格的常用方法和技巧: 1. 鼠标移动行变色: 这个功能可以通过`.hover()`事件来实现。当鼠标悬停在表格行上时,给该行的单元格添加一个类,离开时移除这个类。两种方法的代码如描述所示...

    jQuery 的Ajax应用 操作表格 插件

    jQuery 的Ajax应用 jQuery操作表格 jQuery插件

    jQuery Table表格排序显示代码.zip

    本资源“jQuery Table表格排序显示代码.zip”聚焦于利用jQuery实现动态表格排序的功能,这对于数据展示和用户交互至关重要。下面将详细阐述相关知识点。 1. **jQuery基础**:首先,理解jQuery的基础是至关重要的。...

    jquery插件--表格分页

    jQuery提供了一种简洁的API,让DOM操作、事件处理、动画制作和Ajax交互变得容易。 2. 表格分页概念:表格分页是将大量数据分段显示在多个页面上,用户可以逐页浏览,避免一次性加载过多数据导致页面响应慢或用户...

    jquery table 表格 排序

    在HTML中,每个表格都有一个唯一的`id`属性,通过这个属性我们可以引用并操作表格。 2. `3`:这个参数表示我们要根据表格的第几列进行排序。在HTML的表格结构中,每一行被称为一个`tr`元素,每一列被称为一个`td`或...

    jquery 简单表格排序

    jQuery是一个轻量级、高性能的JavaScript库,它提供了一系列方便的API来简化DOM操作,包括表格排序。本篇文章将深入探讨如何使用jQuery实现简单的表格排序。 首先,引入jQuery库是必不可少的。你可以通过CDN(内容...

    jquery的表格排序插件

    总结来说,jQuery的表格排序插件是提高网页交互性的一种重要工具,它简化了对HTML表格数据的排序操作,使得用户能够方便地对大量信息进行管理和分析。通过学习和使用这样的插件,开发者可以提升网站或应用程序的数据...

Global site tag (gtag.js) - Google Analytics