第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

這段代碼為什么顯示A is undefined

這段代碼為什么顯示A is undefined

慕粉3541299 2016-10-11 16:13:22
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Document</title></head><body><select name = "edu" id = "edu"><option value = "博士">博士~~~</option><option value = "本科" id="benke">本科~~~</option><option value = "大專">大專~~~</option><option value = "幼兒園">幼兒園~~~</option></select><script>var gra = document.getElementById("edu");var A = gra.ChildNodes;alert(A[0].value);</script></body></html>
查看完整描述

6 回答

已采納
?
kofzxaaa

TA貢獻(xiàn)66條經(jīng)驗(yàn) 獲得超26個(gè)贊

你那個(gè)ChildNodes應(yīng)改為:childNodes(小寫c)就可以執(zhí)行了。

查看完整回答
2 反對(duì) 回復(fù) 2016-10-11
?
fantacy吳貝

TA貢獻(xiàn)11條經(jīng)驗(yàn) 獲得超10個(gè)贊

<!DOCTYPE?html>
<html>
<head>
<meta?charset="UTF-8">
<title>Document</title>
</head>
<body>
<select?name?=?"edu"?id?=?"edu">
<option?value?=?"博士">博士~~~</option>
<option?value?=?"本科"?id="benke">本科~~~</option>
<option?value?=?"大專">大專~~~</option>
<option?value?=?"幼兒園">幼兒園~~~</option>
</select>
<script>
var?gra?=?document.getElementById("edu");
var?A?=?gra.childNodes;
alert(A[1].firstChild.nodeValue);
</script>
</body>
</html>

從js逐句來分析。

  1. 獲取id為“edu”的元素節(jié)點(diǎn)。

  2. 獲取該元素下的子節(jié)點(diǎn)數(shù)組(nodelist)。嗯C寫錯(cuò)了,下次注意。(小駝峰法命名函數(shù)跟變量就是第一個(gè)單詞首字母小寫,之后單詞首字母大寫。大駝峰就是所有單詞首字母都大寫,推薦對(duì)象命名使用大駝峰,這樣一眼就能區(qū)分對(duì)象跟函數(shù)和變量的區(qū)別了,函數(shù)也是一種變量)

  3. 彈出警告窗A(0)是id“edu”元素的第一個(gè)子節(jié)點(diǎn)。首先你的<select>與<option>之間有空格,因此這里有一個(gè)空白節(jié)點(diǎn),IE下沒有,其他瀏覽器都不會(huì)忽略這個(gè)空白節(jié)點(diǎn),這點(diǎn)是第二。

  4. 你想取得第一個(gè)子節(jié)點(diǎn),實(shí)際上有一個(gè)空白節(jié)點(diǎn),應(yīng)該是第二個(gè)節(jié)點(diǎn)value="博士"的這個(gè)<option>的文本,因此你使用了value,應(yīng)該使用nodeValue才對(duì)。還有一個(gè)問題在于文本節(jié)點(diǎn)本身是元素節(jié)點(diǎn)的子節(jié)點(diǎn)。也就是A[1].firstchild.nodeValue

  5. 最后你需要繼續(xù)加油,哈哈。

查看完整回答
3 反對(duì) 回復(fù) 2016-10-12
?
stone310

TA貢獻(xiàn)361條經(jīng)驗(yàn) 獲得超191個(gè)贊

首先是childNodes大小寫問題呢,然后childNodes指所有子元素(包括文本元素),當(dāng)你代碼這么寫:

<select?name?=?"edu"?id?=?"edu">
??<option?value?=?"博士">博士~~~</option>
??<option?value?=?"本科"?id="benke">本科~~~</option>
??//這里select和option之間,option和option之間有空白,這段空白就是文本節(jié)點(diǎn);

因此childNodes[0]值得是中間那段空白,自然value為undefined;

可以用children(只獲取元素節(jié)點(diǎn))來代替childNodes[0]



查看完整回答
2 反對(duì) 回復(fù) 2016-10-11
?
執(zhí)著的前端

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超3個(gè)贊

- -別去寫這種糟糕的代碼,沒任何意義,明白一些問題,屬性名永遠(yuǎn)是小寫開頭,所以必然不可能出現(xiàn)ChildNodes這種東西。看你這寫的代碼,新手的實(shí)在有些過分了。

查看完整回答
反對(duì) 回復(fù) 2016-10-11
?
慕粉3696722

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊


首先應(yīng)該是 var A=gra.childNodes;

其次A返回的是一個(gè)nodeList,里面有9個(gè)節(jié)點(diǎn),而第一個(gè)是文本節(jié)點(diǎn)(<TextNode?textContent="\n\n">)

彈出的肯定是undefined。所以可以根據(jù)nodetype來選擇你想要的

查看完整回答
反對(duì) 回復(fù) 2016-10-11
?
輸輸輸

TA貢獻(xiàn)22條經(jīng)驗(yàn) 獲得超21個(gè)贊

因?yàn)?

A is undefined


查看完整回答
反對(duì) 回復(fù) 2016-10-11
  • 6 回答
  • 2 關(guān)注
  • 2335 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)