溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Jquery之table中根據(jù)行選中,進(jìn)行背景變色和radio選中

發(fā)布時(shí)間:2020-07-08 22:46:12 來(lái)源:網(wǎng)絡(luò) 閱讀:2371 作者:相依灬為命 欄目:web開(kāi)發(fā)

實(shí)現(xiàn)功能:點(diǎn)擊列表中的某一行,然后當(dāng)前行會(huì)變成其他顏色,并且其中的radio會(huì)被選中。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path;
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript" src="<%=basePath%>/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
	$("tbody>tr").click(function(){
		$(this)
		    .addClass('sel')
		    .siblings().removeClass('sel');
		    .end()
		    .find(':radio').attr('checked',true);
	});
})
</script>
<style type="text/css">
.sel{
  background: red;
}
</style>
</head>
<body>
 
  <table>
    <thead>
	     <tr><th>選擇</th></tr>
	     <tr><th>姓名</th></tr>
    <thead>
    <tbody>
       <tr><td><input type="radio" name="fruit"></td><td>張三</td></tr>
       <tr><td><input type="radio" name="fruit"></td><td>李四</td></tr>
       <tr><td><input type="radio" name="fruit"></td><td>王五</td></tr>
    </tbody>
  </table>
</body>
</html>

學(xué)習(xí)之初對(duì)于end的用法不太了解,我把自己理解說(shuō)下,歡迎指教。

END()用法在官方文檔的說(shuō)明回到最近的一個(gè)"破壞性"操作之前。即將匹配的元素列表變?yōu)榍耙淮蔚臓顟B(tài)。相信不少人并沒(méi)有理解它的用法。

舉個(gè)簡(jiǎn)單例子

<p><span>Hello</span>,how are you?</p>

jQuery 代碼:

$("p").find("span").end()

其返回的值為:

[ <p><span>Hello</span> how are you?</p> ]

其實(shí)就是:查找P標(biāo)簽中的<span>標(biāo)簽,接著使用END()方法結(jié)束對(duì)P標(biāo)簽的引用,此時(shí)返回的是P標(biāo)簽(JQuery)對(duì)象

就如第一個(gè)例子如果我采用end()用法,那么寫(xiě)法就是

<script type="text/javascript">
$(document).ready(function(){
	$("tbody>tr").click(function(){
		$(this)
		    .addClass('sel')
		    .siblings().removeClass('sel');
		$(this).find(':radio').attr('checked',true);
	});
})
</script>

如果初始化的時(shí)候有表格被選中,則需要處理,代碼如下:

$("table :radio:checked").parent().parent().addClass('sel');

或者

$("table :radio:checked").parents("tr").addClass('sel');

或者

$('tbody>tr:has(:checked)').addClass('sel');

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI