2011-11-28 2 views
0

현재 포커스가있는 입력 필드의 텍스트를 선택하고 싶습니다. 따라서 사용자가 입력을 시작하면 현재 입력 필드에있는 텍스트가 사라집니다. 자바 스크립트 (또는 jquery)로이 작업을 수행 할 수 있습니까?자바 스크립트 : 현재 포커스가 설정된 입력 필드의 텍스트를 선택하십시오.

현재 포커스가있는 필드가 입력 필드가 아닌 경우에는 아무 것도 발생하지 않습니다.

감사합니다.

편집 : 모든 답변자에게 : 당신은 모두 잘못 이해되었습니다 (아마도 내 질문이 명확하지 않을 수 있습니다). 입력 필드가 포커스를 얻는 순간에 텍스트를 선택하고 싶지 않습니다. 그 순간에 포커스가있는 입력 필드의 텍스트를 선택하는 자바 스크립트 함수를 갖고 싶습니다.

+1

하거나 특정 일 (들)? – arb

+0

내 대답은 –

답변

4

미안 당신이 찾고있는 것을 오해 한 것 같습니다. 지금 나는 그것을 더 잘 이해하고 있다고 생각합니다. 이것은 당신이 습득하려는 것을 더 많이합니까?

//If not using 1.7 for jquery you can use bind 
$('input, textarea').on({ 
    focusin: function(){ 
     $(this).addClass("focused"); 
    }, 
    focusout: function(){ 
     $(this).removeClass("focused"); 
    } 
}); 

function highlightText() 
{ 
    var focused = $('input.focused,textarea.focused'); 

    if (focused.size()) { 
     focused.get(0).select(); 
    } 
} 

http://jsfiddle.net/GXFpR/1/

+0

내가 원하는 건 아니에요 ...입력 필드의 텍스트를 선택하고 싶습니다 – Fortega

0

다음과 같이 시도해 볼 수 있습니까? http://jsfiddle.net/z55UZ/

$("input, textarea").focus(
    function() 
    { 
     this.select(); 
    } 
) 

EDIT :

여기

업데이트 된 바이올린이다 http://jsfiddle.net/IrvinDominin/z55UZ/2/

예에서 마지막 포커싱 요소를 선택되며; 하지만 코드를 보면 var childInputHasFocus와 whoHasFocus는 절대로 false로 설정되지 않습니다 ... 선택 기능을 중지하고 싶습니까?

어디에서 기능을 호출하고 싶습니까? 왜냐하면 click 이벤트는 호출자와 마찬가지로 활성/집중 요소를 설정하기 때문입니다.

+0

업데이트 됨 질문에 "자바 스크립트 (또는 jquery)로이 작업을 수행 할 수 있습니까?"라고 알려줍니다. 그래서 ... –

+0

사과, 나는 그것을 놓쳤다. –

+0

@ david, 내 다리 사이의 꼬리가 무슨 뜻인지 모르겠다. 에드워드 (Edward)와 제이슨 (Jason)의 대답을 편집하여 다운 투표를 삭제할 수있었습니다. 나는 OP를 잘못 읽었습니다. –

0

당신은 onfocus 및 확인하고 인라인으로

<input name="" type="text" value="test test" onfocus="this.select()" /> 

UPDATE this.select()를 사용할 수 있습니다 더 보편적 인 접근 방식을, 또한 입력 텍스트의 텍스트 유형의 입력에 초점을 추가 할 것 읽기 전용이 아닙니다.

window.onload = setFocus(); 

네덜란드 령 마지막으로 폼 입력

setFocus = function(){ 
    var i = []; 
    i = document.getElementsByTagName("input"); 
    for(var t=0; t < i.length; t++){ 
     if(i.item(t).type == "text" && i.item(t).readOnly == false){ 
      i.item(t).onfocus = function(){this.select()}; 
    } 
} 
} 
+0

:-(내 편집 참조 – Fortega

0

setFocus(); 

주요 필드이 작동합니다 : 모든 입력 필드의

<html> 
<head> 
</head> 
<body> 

<input type="text" id="theTextBox" onfocus="selectText()" value="some value"></input> 
<script type="text/javascript"> 
function selectText() { 
    document.getElementById("theTextBox").select(); 
}; 
</script> 
</body> 
</html> 
+0

:-(내 편집 참조 – Fortega

관련 문제