jQuery动态生成表格及右键菜单功能示例

本文实例讲述了jQuery动态生成表格及右键菜单功能。分享给大家供大家参考,具体如下:

这里用的是 jquery 1.4.1 的库文件,具体代码如下:

<!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>

<title>无标题页</title>

<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>

<script type="text/javascript">

var id = 0;

function addInfo() {

var cpu = document.getElementById("txtCpu");

var zhuban = document.getElementById("txtZhuban");

var neicun = document.getElementById("txtNeicun");

var yingpan = document.getElementById("txtYingpan");

var tb = document.getElementById("tbAdd");

//alert("数据插入成功!");

var tr = tb.insertRow();

var td0 = tr.insertCell();

td0.innerHTML = id;

var td1 = tr.insertCell();

td1.innerHTML = cpu.value;

var td2 = tr.insertCell();

td2.innerHTML = zhuban.value;

var td3 = tr.insertCell();

td3.innerHTML = neicun.value;

var td4 = tr.insertCell();

td4.innerHTML = yingpan.value;

id++;

$("#tbAdd").append(tr);

}

$(function () {

var clickedTrIndex = -1;

$("#addForm>input[type=button]")

.live("click", function () {

$("#tbAdd tr:has(td):even").css("background", "#ebebeb");

});

//绑定鼠标移入移出事件到表格的行

$("#tbAdd tr:has(td)")

.live("mouseover", function () {

$(this).css("cursor", "pointer").css("background", "#bcc7d8");

})

.live("mouseleave", function () {

var trIndex = $(this).index();

if (trIndex % 2 == 0) {

$(this).css("background", "#ebebeb");

}

else {

$(this).css("background", "");

}

})

.live("mousedown", function (event) {

if (event.button == 2) {

x = event.clientX;

y = event.clientY;

$("#contextMenu").css("display", "block").css("left", x).css("top", y);

clickedTrIndex = $(this).index();

}

});

$("#contextMenu")

.mouseover(function () {

$(this).css("cursor", "pointer");

});

$("body")

.live("mouseup", function (event) {

if (event.button == 0) {

$("#contextMenu").css("display", "none");

}

});

$("#contextMenu li")

.mouseover(function () {

$(this).css("background", "#C1D7EE");

})

.mouseout(function () {

$(this).css("background", "");

})

.click(function () {

var deleteStr = $(this).children("a").attr("title");

if (deleteStr == "delete") {

$("#tbAdd tr:has(td):eq(" + clickedTrIndex + ")").remove();

}

else {

alert("按下了:" + deleteStr);

}

});

});

</script>

<style type="text/css">

#tbAdd{

}

#tbAdd tr td{ height:30px;

text-align:center;

}

#tbAdd thead tr th{ width:90px;

height:30px;

text-align:center;

}

#addForm input[type=text]{ margin-bottom:8px;

width:150px;

}

#contextMenu{ width:150px;

padding:5px 0px 5px 5px;

line-height:24px;

background-color:#F0F0F0;

position:absolute;

display:none;

}

#contextMenu ul{ margin:0px;

}

#contextMenu li{ margin:0px;

margin-left:-15px;

float:left;

width:100%;

list-style-type:none;

}

#contextMenu li a{ text-decoration:none;

padding:5px 0px 5px 12px;

display:block;

color:#282828;

}

</style>

</head>

<body onContextmenu="return false;">

<div>

<table id="tbAdd" cellpadding="0" cellspacing="0" border="1" style="border-collapse:collapse;">

<thead>

<tr>

<th>编号</th><th>CPU</th><th>主板</th><th>内存</th><th>硬盘</th>

</tr>

</thead>

</table>

<br />

<div id="addForm">

<span>CPU:</span><input type="text" id="txtCpu" /><br />

<span>主板:</span><input type="text" id="txtZhuban" /><br />

<span>内存:</span><input type="text" id="txtNeicun" /><br />

<span>硬盘:</span><input type="text" id="txtYingpan" /><br />

<input type="button" value="添加信息" onclick="addInfo()" /><br />

</div>

<div id="contextMenu">

<ul>

<li><a href="#" title="add">添加信息</a></li>

<li><a href="#" title="delete">删除信息</a></li>

<li><a href="#" title="modify">修改信息</a></li>

<li><a href="#" title="save">保存信息</a></li>

</ul>

</div>

</div>

</body>

</html>

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇总》、《jQuery切换特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

以上是 jQuery动态生成表格及右键菜单功能示例 的全部内容, 来源链接: utcz.com/z/348444.html

回到顶部