2010-12-08 3 views
2

입력 필드의 사전 설정 값을 사용자가 포커스 할 때 자동으로 지우는 기능을 작성하고 사용자가 값을 입력하지 않으면 다시 흐리게 표시합니다.데이터를 드래그 앤 드롭 할 때 입력 필드 지우기

이므로 <input type="text" value="example" />의 값은 아무 것도 설정하지 않습니다. 삭제 된 텍스트가 적용되기 전에

내가 페이지 드래그 텍스트의 비트를 선택하고 입력 필드에 드롭

이 필드는 삭제되지 않습니다 다음과 같이

내가 직면하고 문제이다.

대신 입력 필드의 값은 exampleLorem이되며 Lorem과 반대가됩니다.

입력란에 텍스트를 놓은 직후에 기본값을 제거하는 적절한 방법이 있습니까?

+0

내가 ... 모든 X 밀리 초를 확인 타이머를 사용에 대해 생각할 수있는 유일한 안전한 방법 (예 : 50) 값이 변경 및 경우 그렇다면, onchange 이벤트를 수동으로 트리거하십시오. –

답변

4

초점흐림보다 사용할 수있는 다른 이벤트의 몇 가지가 있습니다

이 문제에 대한 가장 흥미로운

해야 drop, dragenterdragleave

참고 : MSIE에서 같이 보인다 포커스 이벤트는 드롭 직후에 발생하기 때문에, 드롭에 의해 강제 설정된 포커스의 호출을 처리하기 위해서, 드롭시에 설정할 플래그의 종류가 필요합니다.

이 또한주의 : 불행하게도 오페라 그 끌어서 놓기-이벤트를 지원하지 않습니다

+0

고마워,이 옳은 길에 나를 넣어. 필자는 원하는 결과를 얻기 위해이 페이지의 예제를 사용하고 수정했습니다. http://www.java2s.com/Tutorial/JavaScript/0480__Drag-Drop/ondropeventhandlerIE.htm – Ilium

0

프리셋을 지우지 않고 마우스를 올리면 프리셋을 지울 수 있습니까?

+0

이 작업을 시도했지만 텍스트를 드래그 할 때 입력 상자에 마우스를 올리거나 마우스 오버하는 것과 같은 이벤트가 작동하지 않았습니다. – Ilium