2013-10-09 38 views
-3

這是我的劇本,但它不工作:如何在單元格td HTML中設置屬性?

var first = document.getElementById("sheet").rows[0]; 
var two = first.cells(4); 
two.setAttribute('style','display:none'); 
+0

-1。順便說一句,一個函數不是一個屬性。查看您的文檔.. – opalenzuela

+0

#sheet是什麼元素?你的標記是什麼? –

+0

「first.Cell(4)'實際上應該做些什麼?因爲它可能不會,無論如何。 – mavrosxristoforos

回答

1

注意cells不是一個函數或方法,這是一個返回的HTML集合,可以通過索引來訪問一個屬性:

var two = first.cells[4]; 

而不是使用的setAttribute,只設置直接與酒店:太具體

two.style.display = 'none'; 
0

我不知道如果youre真的試圖設置屬性或添加功能的onblur - 我會回答這兩個

如果你想設置* ATTRIBUTE *

那麼你的做法是正確的實際 - 考慮two是HTMLObject

two.setAttribute("class","unchecked"); //this adds class .unchecked to the "two" 

如果你想添加一個* FUNCTION() *這將火的onblur

然後,你必須使用的東西綁定 - 最簡單的方法是增加內部的功能HTMLObject屬性(屬性) - 通知! HTMLObject屬性(屬性)是不一樣的屬性,你的HTML代碼中看到:

two.onblur=function(){ /*SomeJavaScriptCode*/ }; 

,如果你已經有了一個功能:

two.onblur = cekUndo;

  • 注意!沒有()括號 - 當它需要你不想讓函數立即開啓時,onblur會運行該函數...
  • 我建議你也檢查一個.addEventListener方法 - 它更加可調,你可以添加例如。對一個事件的更多功能

注意:您可以做<td onblur="myFunction()"> - 直接添加到HTML,但我不認爲你可以做到這一點就這樣,你必須綁定:)運行...

編輯:作爲你的第二個問題 - 如RobG說,你要訪問cells收集與括號[]:如果你實際上有的細胞

var two = first.cells[4]; 

而且檢查指數
(細胞從0索引到X =>索引4表示第五)

+0

請檢查我的腳本更新 – Zamakshari

+0

你能否提供HTML?當沒有HTML時,很難猜出JS錯誤的位置:) –

+0

您是否檢查過控制檯是否有任何錯誤消息? –

相關問題