HTML의 jQuery .focus() 모든 미리 작성된 텍스트를
<input id="formloginusername" type="text" name="username" placeholder="Username" value="Pre-filled-from-database"></input>
JS 강조되고 강조 표시됩니다. 사용자가 채워진 텍스트 뒤에 커서를 놓은 것처럼 커서를 필드에 표시하기 만하면됩니다.
감사합니다.
HTML의 jQuery .focus() 모든 미리 작성된 텍스트를
<input id="formloginusername" type="text" name="username" placeholder="Username" value="Pre-filled-from-database"></input>
JS 강조되고 강조 표시됩니다. 사용자가 채워진 텍스트 뒤에 커서를 놓은 것처럼 커서를 필드에 표시하기 만하면됩니다.
감사합니다.
여기에 멋진 약간의 트릭은 ...
$(document).ready(function() {
var $field = $("#formloginusername"),
oldVal = $field.val();
$field.focus().val('').val(oldVal);
});
DEMO :
Perfect! 감사! – GiantDuck
이것은 아주 좋은 예입니다. 감사합니다. 문제는 다음과 같습니다. 이제는 페이지로 이동하여 집중하지만 사용자가 입력을 시작하면 텍스트가 지워지지 않고 추가됩니다. 즉 귀하의 가치는 '여기에서 검색하십시오!' 당신은 '대학 수학 서적'을 입력하면 '여기에서 검색! 대학 수학 서적'이됩니다. 이것을 피하는 방법? EDIT : $ ("input.search-input-header") [0] .reset(); 작동하지만 확인을 클릭하면됩니다. 초점 설정은 어떻게하고 입력을 시작하면 취소됩니까? – DnfD
@DavidPardy - 오래된 브라우저에 대해 걱정하지 않는다면, 당신이'placeholder' 속성의 기본 동작을 설명한다고 생각합니다. '' – ahren
http://jsfiddle.net/X7Y8S/ 그냥이 할 것 : 나는 당신의 방법은이다 사용하여 크롬에서 발견 한 것은
$('#field').focus().val($("#field").val());
Hopstream을, 커서는 텍스트의 끝에서 끝났다. 커서를 텍스트를 강조 표시하지 않고 필드의 시작 부분에 초점을 맞추는 방법이 필요했습니다. . 이것은 나를 위해 일한 :
$ ('#의 elementId로부터') 각 (함수() { $ (이) .focus(); this.selectionEnd = this.selectionStart; });
브라우저 기본 동작입니다. – adeneo
나는 adeneo에 동의한다. 그 외에, 당신은 입력에 close 태그를 넣을 필요가 없다. 대신에 다음과 같이 입력을 닫는다. – VIDesignz