2013-06-13 88 views
0

我有4個文本輸入調整格填充與文本輸入

Left<input type="text" class="input_box" onKeyUp="show(1,this)"><br /> 
right<input type="text" class="input_box" onKeyUp="show(2,this)"><br /> 
top<input type="text" class="input_box" onKeyUp="show(3,this)"><br /> 
bottom<input type="text" class="input_box" onKeyUp="show(4,this)"><br /> 

,並含有大量的詞彙3 <div>。我必須在JavaScript中使用「switch」來調整div的padding,該類名稱是「extra」。我已經寫了一個函數show(inde,obj),但它不起作用。

看到確切的程序的位置:FIDDLE

謝謝!

+0

查看控制檯日誌中的錯誤(在大多數瀏覽器中,F12,然後轉到控制檯) – Curt

+0

首先,需要在全局範圍內定義「show」功能。在jsfiddle中,您需要將第二個下拉列表從「onLoad」更改爲「No wrap」頭或身體。 – grc

+0

@Curt這是未捕獲TypeError:對象#沒有方法'getElementByClassName' – Darklizard

回答

1

有些傢伙快:)

由於客棧是包含了一組元素,你需要經過所有的人。 你錯過小號

document.getElementsByClassName("extra") 

我已經更新your fiddle

+0

謝謝!它適用於多個div一起! – Darklizard

1

您sysntax是不正確

使用 document.getElementsByClassName("extra")[0]

+0

謝謝!我應該仔細閱讀教程! – Darklizard

1

你寫getElementByClassName而不是getElementsByClassName。而且,jsFiddle在window.onload = function() { /* you code */}中包裝你的代碼。所以你必須使用window.show = function() {}來定義你在jsFiddle中的演示處理程序。

// change this 
var inn = document.getElementByClassName("extra"); 
// to 
var inn = document.getElementsByClassName("extra")[0]; 

這裏是updated demo

+0

非常感謝!我應該更仔細 – Darklizard