jquery 表格的增加刪除和修改及設定奇偶行顏色
阿新 • • 發佈:2019-01-08
最近一週在學了一點點HTML, CSS, javascript,用javascript的jquery完成了一個簡單的表格操作,有增加、刪除和修改功能。
表格分三列,第一列是學生編號(ID號),第二列是學生姓名,第三列為學生年齡。在姓名和年齡框內輸入資料,再點“Add”就可以增加資料(ID號會自動遞增的生成),輸入ID號再輸入新的姓名和年齡點“Edit”就可以修改,刪除的話輸入ID號就點“Delete”就可以刪除指定行。
表格最上面會及時更新當前表中行數,在輸入ID時也會動態響應並更新姓名年齡輸入框的內容。使程式達到了基本的可操作性。表格的表頭用CSS作了顏色控制,表格中的內容也用CSS按奇偶行設定了不同的顏色。從而使介面變的更加美觀。
下面是截圖:
完整的程式碼如下(Win7+IE9測試通過):
//by MoreWindows (http://blog.csdn.net/MoreWindows)
<html>
<head>
<script src="jquery-1.7.min.js"></script>
<script>
$(document).ready(function()
{
SetTableRowColor();
UpdataTableRowCount();
if ($.browser.msie) //判斷是不是MS的ie瀏覽器
{
$("#id").bind("propertychange", function(){IDInputChange();});
}
else
{
document.getElementById("#id").addEventListener("input", IDInputChange, false);
}
});
</script>
<script>
//根據ID輸入框的值取表格中對應內容並填充到姓名年齡的輸入框中
function IDInputChange()
{
//根據id查詢到指定行
var i=SearchIdInTable($("#Table tr"), $("#id").val());
if (i != -1)
{
//得到該行的資料
var name = $("#Table tr:eq(" + i + ") td:eq(1)").html();
var age = $("#Table tr:eq(" + i + ") td:eq(2)").html();
//將資料更新到對應的文字框中
$("#Name").val(name);
$("#Age").val(age);
}
else
{
$("#Name").val("");
$("#Age").val("");
}
}
//在表格的第一列中查詢等於指定ID的行
function SearchIdInTable(tablerow, findid)
{
var i;
var tablerownum=tablerow.length;
for (i=1; i<tablerownum; i++)
if ($("#Table tr:eq(" + i + ") td:eq(0)").html() == findid)
return i;
return -1;
}
//用CSS控制奇偶行的顏色
function SetTableRowColor()
{
$("#Table tr:odd").css("background-color", "#e6e6fa");
$("#Table tr:even").css("background-color", "#fff0fa");
}
//更新表格當前顯示的行數
function UpdataTableRowCount()
{
$("#tableRowCount").html($("#Table tr").length - 1);
}
function IncTableRowCount()
{
var tc = $("#tableRowCount");
tc.html(parseInt(tc.html()) + 1);
}
function DecTableRowCount()
{
var tc = $("#tableRowCount");
tc.html(parseInt(tc.html()) - 1);
}
</script>
<script>
$(document).ready(function()
{
//增加
$("#AddBtn").click(function()
{
var id=parseInt($("#Table tr:last td:first").html()) + 1;
var name = $("#Name").val() != "" ? $("#Name").val() : " ";
var age = $("#Age").val() != "" ? $("#Age").val() : " ";
//新增加一行
var appendstr = "<tr>";
appendstr += "<td>" + id + "</td>";
appendstr += "<td>" + name + "</td>";
appendstr += "<td>" + age + "</td>";
appendstr += "</tr>";
$("#Table").append(appendstr);
IncTableRowCount();
SetTableRowColor();
});
//編輯
$("#EditBtn").click(function()
{
//根據id查詢到指定行
var i=SearchIdInTable($("#Table tr"), $("#id").val());
if (i != -1)
{
//得到新內容
var name = $("#Name").val() != "" ? $("#Name").val() : " ";
var age = $("#Age").val() != "" ? $("#Age").val() : " ";
//修改該行的二列資料
$("#Table tr:eq(" + i + ") td:eq(1)").html(name);
$("#Table tr:eq(" + i + ") td:eq(2)").html(age); //parseInt(age)也可以
}
});
//刪除
$("#DeleteBtn").click(function()
{
//根據id查詢到指定行
var i=SearchIdInTable($("#Table tr"), $("#id").val());
if (i != -1)
{
//刪除表格中該行
$("#Table tr:eq(" + i + ")").slideUp("slow");
$("#Table tr:eq(" + i + ")").remove();
DecTableRowCount();
SetTableRowColor();
}
});
});
</script>
</head>
<body>
<p>簡單的表格操作,有增加、刪除和修改功能。id輸入框能動態響應輸入</p>
id:<input type="text" id="id" />
Name:<input type="text" id="Name" />
Age:<input type="text" id="Age" />
<input type="button" id="AddBtn" value="Add" />
<input type="button" id="EditBtn" value="Edit" />
<input type="button" id="DeleteBtn" value="Delete" />
<table id="Table" align="center" border="2" cellpadding="10" cellspacing="1" bordercolor="#FFAA00">
<caption style="font-size:15px">學生表<label id="tableRowCount"></label></caption>
<th>id</th><th>Name</th><th>Age</th>
<tr> <td>1</td> <td>MoreWindows</td> <td>24</td> </tr>
<tr> <td>2</td> <td>MW</td> <td>19</td> </tr>
</table>
</body>
</html>
<!-- css控制表頭的背景顏色 css 雙重標籤 派生選擇器-->
<style>
#Table th
{
background-color:#7cfc00;
}
程式碼中的jquery-1.7.min.js可以到jquery的官網上下載。
寫的很菜^_^,高手輕拍。
轉載請標明出處,原文地址:http://blog.csdn.net/morewindows/article/details/7052188
再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://www.cnblogs.com/captainbed