jQuery を使用して、テーブル内の奇数行と偶数行の追加、削除、変更、色の設定を行う

巴扎黑
リリース: 2017-08-09 16:08:52
オリジナル
1911 人が閲覧しました

先週、私は HTML、CSS、JavaScript を少し学び、JavaScript で jquery を使用して、追加、削除、変更の機能を備えた簡単なテーブル操作を完了しました。

表は 3 つの列に分かれており、最初の列は学生番号 (ID 番号)、2 列目は学生の名前、3 列目は学生の年齢です。名前と年齢のボックスにデータを入力し、[追加] をクリックしてデータを追加します (ID 番号は段階的に自動的に生成されます)。次に新しい名前と年齢を入力し、[編集] をクリックして変更します。削除する場合はIDを入力して「削除」をクリックするだけで指定した行が削除されます。

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 を使用して、テーブル内の奇数行と偶数行の追加、削除、変更、色の設定を行うの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!