假如現(xiàn)在要做一個(gè)極為簡(jiǎn)單的課程表收恢,就是從一個(gè)javascript的object里面讀取數(shù)據(jù)实夹,然后往html里面的表格填充內(nèi)容直砂。數(shù)據(jù)假如是長(zhǎng)這樣的:
var tt = {
mondayClasses:["英語","英語","數(shù)學(xué)","數(shù)學(xué)","基礎(chǔ)護(hù)理","基礎(chǔ)護(hù)理","",""],
tuesdayClasses:["思修","思修","護(hù)理研究","護(hù)理研究","","","",""],
wednesdayClasses:["生物","生物","物理","物理","基礎(chǔ)護(hù)理","基礎(chǔ)護(hù)理","",""],
thursdayClasses:["化學(xué)","化學(xué)","","","營(yíng)養(yǎng)學(xué)","營(yíng)養(yǎng)學(xué)","",""],
fridayClasses:["物理","物理","數(shù)學(xué)","數(shù)學(xué)","基礎(chǔ)護(hù)理","基礎(chǔ)護(hù)理","實(shí)驗(yàn)課","實(shí)驗(yàn)課",
}
大致就是一副類似json的樣子幌陕,然后我們html里面的table元素是長(zhǎng)成下面這樣的
<table>
<tr>
<th>節(jié)數(shù)</th>
<th>星期一</th>
<th>星期二</th>
...
</tr>
<tr>
<td>第一節(jié)</td>
<td id="mon1st"></td>
<td id="tue1st"></td>
...
</tr>
<tr>
<td>第二節(jié)</td>
<td id="mon2nd"></td>
<td id="tue2nd"></td>
...
</table>
非常挫的一種寫法供璧,而且坑很大存崖,回頭慢慢填。之前我在復(fù)唧唧上看過一篇文章1 睡毒,是說教學(xué)呢来惧,要先讓學(xué)的人頭痛,然后給他阿司匹林人家才會(huì)感激我演顾,嗯供搀,所以坑是必要的。
回頭看開頭的javascript對(duì)象钠至,這個(gè)對(duì)象存儲(chǔ)了課程表里面周一到周五每一天從第一節(jié)到第八節(jié)課所有課程的安排葛虐。
- 先看
mondayClasses:["",""...,""]
這一行,這是對(duì)象里面的一個(gè)屬性棉钧。如果說js里面對(duì)象是一個(gè)很大的柜子屿脐,那么屬性就是柜子里面的一個(gè)小格子。這個(gè)叫做mondayClasses(起這個(gè)名字是因?yàn)樾枰胖芤坏恼n程安排)的小格子里面的內(nèi)容是一個(gè)數(shù)組(注意[]
)宪卿。另外這里沒有=
的诵,因?yàn)樵趯?duì)象里面設(shè)置一個(gè)屬性是用:
。數(shù)組的內(nèi)容就是周一的課程安排佑钾,從第一節(jié)一直到第8節(jié)(因?yàn)檫@里面有8個(gè)元素拔靼獭) - 那么等到用的時(shí)候,也就是要設(shè)置某一天某一節(jié)課的時(shí)候休溶,就要用到一個(gè)html元素的id了(不知道id和元素是什么的請(qǐng)到w3cschool里面html教程看一下)代赁,用到的語句是
document.getElementById("wed8th")
撒遣。這一句的意思是從document這個(gè)對(duì)象(也就是指你的網(wǎng)頁(yè))里面尋找一個(gè)id是wed8th的元素,這個(gè)元素被存進(jìn)了一個(gè)叫做wed8thCell的變量里面等候使用 - wed8thCell現(xiàn)在代表著我們表格里面第9行第4列的單元格(因?yàn)檫@個(gè)單元格的id就是wed8th肮芏濉),現(xiàn)在通過設(shè)置這個(gè)對(duì)象(在javascript里面禾进,所有的html元素都會(huì)被視為一種對(duì)象, 應(yīng)該是屬于document object model吧豁跑。這個(gè)跟開頭那個(gè)長(zhǎng)的像json的對(duì)象又不一樣哦)的innerHTML屬性就可以改變
<td id="wed8th"></td>
中間的空白內(nèi)容了(也就是>和</td中間的內(nèi)容) - 下面的就是從獲得一個(gè)特定單元格到設(shè)置這個(gè)單元格的代碼,只要把這種過程重復(fù)上
5*8=40
次就可以完成了泻云。
var mon1stCell = document.getElementById("mon1st")
mon1stCell.innerHTML=tt.mondayClasses[0]