2011-08-16 5 views
1

입력란을 만들고 "댓글?"이라고 말합니다. 사용자가 그 안에 무엇이든 입력하기 전에. 코드;삭제 값 = "댓글?" 입력 상자에서 클릭하자마자

  <input type="text" name="saysome" value = "comments?"/> 

하지만이 "댓글?"을 삭제 하시겠습니까? 클릭 상자를 클릭하자마자 입력 상자를 여기에있는 검색 상자와 같이하려고합니다. 실제로는 똑같습니다. 어떻게 할 수 있습니까? javascipt만으로도 할 수 있습니까? :(

감사

jQuery를하지 않고
+2

이전 브라우저의 경우'value = '대신'placeholder = ""'를 사용하고 [JS fallback] (https://github.com/parndt/jquery-html5-placeholder-shim)을 사용해보십시오. – mario

+0

PHP가 여기에있는 모든 내용에 – GBa

답변

-1

:.

입력에게 ID를 부여, 그리고 onclick 이벤트를 사용하여 값을 취소

<input type="text" name="test" id="test" value="test" onclick="if(document.getElementById('test').value=='test')document.getElementById('test').value='';"> 

또한 HTML을 사용하지 않는 오래된 브라우저를 지원합니다 5.

+0

-1을 적용하는지 확실하지 않습니다. 텍스트가 처음 "의견?"이라고 표시 될 때뿐만 아니라 매번 취소됩니다. – GBa

+0

좋은 캐치. 잠정적으로 수정했습니다. 하나 이상의 변수가 발생하지 않도록 별도의 변수를 얻는 것이 더 좋습니다 ... –

3

여기에있는 html5 자리 표시 자 속성을 사용할 수 있습니다. HTML5 Specs

예를 들어

는 :

<input type="text" name="saysome" placeholder = "comments?"/> 

또한 HTML5를 지원하지 않는 브라우저를위한 자바 스크립트 접근 방식을 취할 수있다.

0

비 JQuery와 :

onClick="clearComments()" 

function clearComments() { 
    commentInput = document.getElementById("commentsId"); 
    if(commentInput.value == 'comments?') { 
     commentInput.value = ''; 
    } 

} 
0

다른 덧글이 언급 한 바와 같이, 당신이 자리를 확인해야합니다. 귀하의 질문에 대답하기 위해, 사용자가 이미 뭔가를 입력하지 않은 경우이 메서드는 마우스 클릭시 텍스트를 제거합니다. 이것은 입력의 ID가 textbox이라고 가정합니다. 당신은 당신이 가지고있는 것과 같이 그것을 바꿔야 만합니다. 아니면 입력에 id를 할당해야합니다.

<input id="textbox" type="text"/> 

과 JS :

document.getElementById('textbox').onclick = function() 
{ 
    var box = document.getElementById('textbox'); 
    if(box.value==box.defaulValue)box.value ==''; 
} 
1

간단한 방법은 사용자가

<input type="text" name="TB" value="Please Enter.." onfocus="this.value==this.defaultValue?this.value='':null"/> 
0
<input type="text" name="saysome" onblur="if(this.value=='') this.value='comments?';" onclick="this.value=''" value="comments?" /> 

에 아무것도 입력 한 경우 언제든지 상자에 포커스가, 그리고 웁니다 이 예제를 참조하십시오. @http://x.co/Z2pa