如何使用javascript清除文本框

kal*_*lls 34 javascript

我有一个

<input type="text" value="A new value">
Run Code Online (Sandbox Code Playgroud)

当焦点在文本框上时,我需要一个javascript方法来清除文本框的值.

怎么能实现这一目标?

zis*_*ish 34

只是使用元素

   function name()
   {  
   document.getElementById('elementid').value = "";
   }
Run Code Online (Sandbox Code Playgroud)

您可以在文本框的onfocus事件上调用此函数并清除该值


Col*_*ell 20

听起来你正试图使用​​"水印"(当用户专注于盒子时,默认值会自动清除).确保在清除之前检查该值,否则您可能会删除他们输入的内容!试试这个:

<input type="text" value="A new value" onfocus="if(this.value=='A new value') this.value='';">
Run Code Online (Sandbox Code Playgroud)

这将确保它仅在值为"新值"时清除.

  • @Kalls:如果取消按钮是正常的`<input type ="reset">`,那么它应该这样做. (2认同)
  • @Kalls:您需要为输入提供一个ID并将其放在该方法中:`$('#mytextbox').val('');`其中'mytextbox'是ID. (2认同)

Kea*_*her 10

<input type="text" value="A new value" onfocus="javascript: if(this.value == 'A new value'){ this.value = ''; }" onblur="javascript: if(this.value==''){this.value='A new value';}" />
Run Code Online (Sandbox Code Playgroud)

  • 不过,您应该使用placeholder =''属性 (3认同)

小智 9

对于那些现在遇到这种情况的人来说,这就是placeholder属性所要做的.没有JS必要:

<input type="text" placeholder="A new value">
Run Code Online (Sandbox Code Playgroud)


Sas*_*shi 6

简单的一个

onfocus="javascript:this.value=''" onblur="javascript: if(this.value==''){this.value='Search...';}"
Run Code Online (Sandbox Code Playgroud)


Saj*_*eeb 6

使用......

<input type="text" name="yourName" placeholder="A new value" />


Jus*_*ier 5

如果使用jQuery是可以接受的:

jQuery("#myTextBox").focus( function(){ 
    $(this).val(""); 
} );
Run Code Online (Sandbox Code Playgroud)


Swa*_*ilP 5

只需设置空字符串

    <input type="text" id="textId" value="A new value">
    document.getElementById('textId').value = '';
Run Code Online (Sandbox Code Playgroud)