2012-02-11 7 views
2

DOM 초보자입니다. 그런 질문이 있습니다. 는 그 =>createElement 스타일링

<div id="name_field" style="text-align: center;"> 
    <form name="add" action="index.php" method="post"> 
    Name&nbsp;&nbsp;&nbsp;<input type="text" name="name_" id="name_" size="15">&nbsp;&nbsp;&nbsp;<a href="javascript:void(0)" class="some" onclick="addChild();">Add&nbsp;More</a><br> 
    <span id="a">here is that</span> 
    </form> 
</div> 

같은 HTML 양식을 가지고 그리고는 스타일 (CSS) 컨텐츠 사업부에 "입력"요소를 추가합니다하는 AddChild() 함수를 볼 수있는 것처럼 전화를 걸. 또한, 것을 사람이 나를 도와 주면 할 아래의 방법으로 위의 "입력"요소를 추가 할 필요가 ... 나는 그런 자바 스크립트 코드 =>

function addChild() 
{ 
    var div = document.getElementById("name_field"); 
    var el = document.createElement("input"); 
    el.style.size = 10; 
    div.appendChild(el); 
} 

을 가지고 있지만 그것은 작동하지 않습니다. 감사합니다 ... :)

답변

2

input 요소의 size은 (는) 스타일 속성이 아닙니다. input 요소 자체의 속성입니다.

el.style.size = 10; 

이이어야한다 그래서이

...

el.size = 10; 

난 그냥 당신이 무슨 뜻인지 모른다 입력을 "또한 추가 할 필요가있다" "위에서 아래로 요소 ...".

+1

고마워요. – tnanoba

+0

@Tornike : 천만에요. –

+1

맞아요.하지만 사이트 접근성을 위해 'el.style.width ='10em '; (예를 들어) CSS 접근 방식을 사용하는 것이 더 나은 방법 일 것입니다. 비록 똑같이 분명히, 그것은 OP가 묻는 것이 아니에요 ... +1 –

0

style.size가 없습니다. 어쩌면 당신은 스타일을 찾고 있습니다. 높이 또는 스타일. 폭?

+0

입력 양식 (필드)의 크기를 변경하고 싶습니다. 어떻게해야합니까? – tnanoba

+0

ok, el.size = xxx –

+0

'size' 속성이''문자의 너비 (IIRC)를 반영하기 때문에''el.style.width = '10em'; ' 입력 '요소. –

0

먼저 스타일에 크기가 없습니다. 높이와 너비를 설정할 수 있습니다.

ele.style.width = '10px';

그러나 그것은 또한 그렇게 u는 함께 갈 수없는 크로스 브라우저 competible,

ele.setAttribute 후 ('스타일', '폭 : 10px; 높이 : 10px');

사용하는 크기는 Firefox와 IE에서 다를 수 있습니다. !!!