2014-06-23 5 views
0

나는 여기에 대한 답변을 둘러 보았지만이 문제와 유사한 것을 찾을 수 없지만 사용자가 숫자를 입력하면 입력 셀에 서식을 지정합니다. 즉 "100"은 "100 %"하지만 결코 그런 일은 일어나지 않습니다.왜 자바 스크립트에서 입력 필드의 속성이 onchange 후에 변경되지 않습니까?

onchange 이벤트가 발생하면 입력이 올바르게 처리되지만 입력 필드의 "value"속성을 변경해야 할 때가 발생합니다. 왜 이런거야? 내 자바 스크립트에서

나는

<input onchange='update();' .... 

이 업데이트 메소드를 호출해야하지만이 줄에 올 때

element.setAttribute(attr, value); 

아무것도 일어날 것 같다. 입력 상자의 값을 변경하기 전에 입력 상자의 포커스를 제거해야합니까?

+0

입력 필드 [100]을 [100 %]로 변환 하시겠습니까? element.value = element.value + '%'를 사용하십시오 – dsuess

답변

1

그냥 당신이하지 않는 것

<input onchange='update(this);' 

function update(element) { 
element.value=value; 

당신이 그것을 필요하지 않은 경우 (언급되고있는 요소를 이야기하는 시도 .value

element.value = value; 
+0

여기에 setAttribute를 사용할 이유가 없습니다 – tomysshadow

+0

감사합니다! 네가 할 수 있다는 것을 나는 몰랐다. 입력 할 때 메서드 나 변수를 표시하는 IDE를 사용하고 setAttribute 만 표시됩니다. 값이 없습니다. 다시 한 번 감사드립니다. 지금 바보가됩니다. :/ – Richard

+0

@Cian - 걱정할 필요가 없습니다 - IDE가 JavaScript 힌트 감지 용으로 특별히 설계되지 않은 경우 항상 더 많은 메서드를 사용할 수 있다고 가정하십시오 – tymeJV

0

전화 당신의 기능의 다른 곳에).

+0

팁 주셔서 감사합니다 c : – Richard

관련 문제