有時(shí)要做到在一個(gè)Table中點(diǎn)選某一行改變背景顏色,但上次點(diǎn)的背景顏色保持最初的顏色。這樣能夠讓用戶知道剛才點(diǎn)選了那一行,還有就是能能行的數(shù)據(jù)用javascript還原到Form中實(shí)現(xiàn)修改數(shù)據(jù)。
代碼如下:
1 <form name="theForm">
2 <input type="text" name="userName">
3 </form>
4 <table>
5 <tr bgcolor="#CCCCCC" onclick="changeBackColor(this,'harryson')">
6 <td>用戶名--Harryson</td>
7 </tr>
8 </table>
9
10 <script language="javascript">
11 var sltObj=null;//原來的行對(duì)象
12 var befColor = "";//原來行對(duì)象的背景顏色
13 //方法用來改變當(dāng)前行的背景顏色,還原原來行的背景顏色,把設(shè)置的值寫到表單中
14 function changeBackColor(ARG,userName){
15 if (sltObj == ARG) {
16 return true;
17 } else {
18 if(sltObj!=null) {
19 sltObj.bgColor= befColor;
20 }
21 befColor = ARG.bgColor;
22 //alert(befColor);
23 ARG.bgColor="#66CC99";
24 }
25
26 sltObj = ARG;
27 parent.document.theform.userName.value = userName;//表示table是在iframe中
28 document.theform.userName.value = userName;//表示table是相同的from中
29 }
30 </script>
2 <input type="text" name="userName">
3 </form>
4 <table>
5 <tr bgcolor="#CCCCCC" onclick="changeBackColor(this,'harryson')">
6 <td>用戶名--Harryson</td>
7 </tr>
8 </table>
9
10 <script language="javascript">
11 var sltObj=null;//原來的行對(duì)象
12 var befColor = "";//原來行對(duì)象的背景顏色
13 //方法用來改變當(dāng)前行的背景顏色,還原原來行的背景顏色,把設(shè)置的值寫到表單中
14 function changeBackColor(ARG,userName){
15 if (sltObj == ARG) {
16 return true;
17 } else {
18 if(sltObj!=null) {
19 sltObj.bgColor= befColor;
20 }
21 befColor = ARG.bgColor;
22 //alert(befColor);
23 ARG.bgColor="#66CC99";
24 }
25
26 sltObj = ARG;
27 parent.document.theform.userName.value = userName;//表示table是在iframe中
28 document.theform.userName.value = userName;//表示table是相同的from中
29 }
30 </script>
個(gè)人還是比較人性化的,:)