台灣最大程式設計社群網站
線上人數
1381
 
會員總數:241337
討論主題:186908
歡迎您免費加入會員
討論區列表 >> Java Script/ Node.js >> childNodes 一直抓不到正確直
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
childNodes 一直抓不到正確直
價值 : 200 QP  點閱數:265 回應數:12

樓主

瞌男
初學者
92 185
2612 401
發送站內信

使用 Google Chrome



addone()





搜尋相關Tags的文章: [ childNodes ] , [ Js ] , [ ASP ] ,
本篇文章發表於2017-09-25 15:55
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

瞌男
檢舉此回應
tb.childNodes[1].childNodes[i].cells[7].childNodes[1].innerHTML;

一直產生錯誤
以前在IE8時都沒問題
IE9以上都出現問題
而我主要用的是Google Chrome也是一樣

勞煩有先進可以幫幫解決
本篇文章回覆於2017-09-25 15:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
不錯的參考

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
你可以先說說看你碰到的是怎麼樣的錯誤訊息。

其實我好想叫你換用jquery來處理會比較快。

一般這種多重式的子節點獲取方式。
有時會常因為其中一個環節出問題。

這時你要先靠你自已一節一節試著取看看值。然後再來判斷。
本篇文章回覆於2017-09-25 18:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
最有價值解答

Jerry
捐贈 VP 給 Jerry 檢舉此回應
這段程式是要計算金額總額?試試看改成這樣


本篇文章回覆於2017-09-26 16:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

瞌男
檢舉此回應
感謝 Jerry 與 浩瀚星空

tmpInt_2 = tmpInt_2 + parseInt(tb.childNodes[1].childNodes[i].cells[7].childNodes[0].value);

試過但是不行


本篇文章回覆於2017-09-26 17:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
不錯的參考

Jerry
捐贈 VP 給 Jerry 檢舉此回應
你的for有改嗎,主要改第5、8行


本篇文章回覆於2017-09-26 20:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
不錯的參考

淺水員
檢舉此回應
table有rows可以用,盡可能不要用childNodes
另外,大多數的情況下也是用children而不是childNodes
(childNodes會連textNodes一起包含進去)

addone()第6行改這樣更簡單:


然後計算總金額:

本篇文章回覆於2017-09-27 02:32
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

瞌男
檢舉此回應
終於恢復正常了 感謝大家幫忙

感謝 Jerry
您的



也感謝 淺水員 您提供的方式
但 children與好像只限於IE使用其他瀏覽器可以相容嗎?

也感謝版主 浩瀚星空
真的jquery確實簡短有效率多了
只是還在初學中
本篇文章回覆於2017-09-27 14:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

淺水員
檢舉此回應
children 其他瀏覽器也可用,請參考w3c網站-children
之所以盡可能不要用 childNodes 的原因在於 childNodes 回傳的內容包含文字節點以及注解。
當我們的 html 兩標籤之間有空格或是換行時,很容易產生文字節點。
有時候程式錯誤就在此發生。
關於 childNodes 也可參考 w3c網站-childNodes ,裡面有特別提到這種問題。
本篇文章回覆於2017-09-27 18:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

淺水員
檢舉此回應
補充一個函式:getElementsByName
這可以直接取得整份HTML文件相同name的集合:

本篇文章回覆於2017-09-27 20:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

瞌男
檢舉此回應
感謝 淺水員
本篇文章回覆於2017-09-29 14:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

Jerry
捐贈 VP 給 Jerry 檢舉此回應
你的i從1開始跑

你可以先alert看看以下出來的值是什麼

本篇文章回覆於2017-09-29 17:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
回應

Jerry
捐贈 VP 給 Jerry 檢舉此回應
回錯 抱歉
本篇文章回覆於2017-09-29 17:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.