Given a <textarea>
with a default value as follows:
<textarea>Please describe why</textarea>
How do you clear the default value when the user clicks to edit the field?
This question is related to
javascript
html
textarea
The best solution what I know so far:
<textarea name="message" onblur="if (this.value == '') {this.value = 'text here';}" onfocus="if (this.value == 'text here') {this.value = '';}">text here</textarea>
jQuery attribute val() should do the job.
You can do $('#YourTextareaID').click(function(e) { e.target.value = ''; })
.
<textarea name="post" id="post" onclick="if(this.value == 'Write Something here..............') this.value='';" onblur="if(this.value == '') this.value='Write Something here..............';" >Write Something here..............</textarea>
<textarea onClick="javascript: this.value='';">Please describe why</textarea>
Try:
<input name="mytextbox" onfocus="if (this.value=='Please describe why') this.value = ''" type="text" value="Please Describe why">
Did you mean like this for textfield?
<input type="text" onblur="if(this.value == '') this.value='SEARCH';" onfocus="if(this.value == 'SEARCH') this.value='';" size="15" value="SEARCH" name="xSearch" id="xSearch">
Or this for textarea?
<textarea id="usermsg" rows="2" cols="70" onfocus="if(this.value == 'enter your text here') this.value='';" onblur="if(this.value == '') this.value='enter your text here';" >enter your text here</textarea>
Here's a solution if you have dynamic data coming in from a database...
The 'data' variable represents database data.
If there is no data saved yet, the placeholder will show instead.
Once the user starts typing, the placeholder will disappear and they can then enter text.
Hope this helps someone!
// If data is NOT saved in the database
if (data == "") {
var desc_text = "";
var placeholder = "Please describe why";
// If data IS saved in the database
} else {
var desc_text = data;
var placeholder = "";
}
<textarea placeholder="'+placeholder+'">'+desc_text+'</textarea>
You can use the placeholder attribute introduced in HTML5:
<textarea placeholder="Please describe why"></textarea>
This will place your filler text in grey that will disappear automatically when a user clicks on the text field. Additionally, it will reappear if it loses focus and the text area is blank.
This is your javascript file:
function yourFunction(){
document.getElementById('yourid').value = "";
};
This is the html file:
<textarea id="yourid" >
Your text inside the textarea
</textarea>
<button onClick="yourFunction();">
Your button Name
</button>
You may try this code,
<textarea name="textarea" cols="70" rows="2" class="searchBox" id="textarea" onfocus="if(this.value == 'Please describe why') this.value='';" onblur="if(this.value == '') this.value='Please describe why';">Please describe why</textarea>
Source: Stackoverflow.com