Reputation: 1596
After typing some text on the textarea
these three button is to working.
I inspect that in google chrome and I saw in html rendered code it successfully adds
innerHtml
but it doesn't show it ontextarea
.
Why it is not working?
How can I solve this problem?
function clickTicK(element){
var texta = document.getElementById(element);
texta.innerHTML = '✔';
}
function clickCross(element){
var texta = document.getElementById(element);
texta.innerHTML = '✘';
}
function enable(element) {
var texta = document.getElementById(element);
texta.innerHTML = '';
}
<textarea name="textareaname" id="textareaid" placeholder="click here to edit"></textarea><br>
<button onclick="enable('textareaid');">✎</button><br>
<button onclick="clickTicK('textareaid');">✔</button><br>
<button onclick="clickCross('textareaid');">✘</button>
If I use textarea.value
then it works but shows code "✔" or "✘" but not symbol.
function clickTicK(element){
var texta = document.getElementById(element);
texta.value = '✔';
}
function clickCross(element){
var texta = document.getElementById(element);
texta.value = '✘';
}
function enable(element) {
var texta = document.getElementById(element);
texta.value = '';
}
<textarea name="textareaname" id="textareaid" placeholder="click here to edit"></textarea><br>
<button onclick="enable('textareaid');">✎</button><br>
<button onclick="clickTicK('textareaid');">✔</button><br>
<button onclick="clickCross('textareaid');">✘</button>
Upvotes: 1
Views: 732
Reputation: 8297
You can use jQuery's html() function to extract the html you want and then set the value to that. See example below:
function clickTicK(element){
var texta = document.getElementById(element);
texta.value = $('<span>').html('✔').html();
}
function clickCross(element){
var texta = document.getElementById(element);
texta.value = $('<span>').html('✘').html();
}
function enable(element) {
var texta = document.getElementById(element);
texta.value = '';
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea name="textareaname" id="textareaid" placeholder="click here to edit"></textarea><br>
<button onclick="enable('textareaid');">✎</button><br>
<button onclick="clickTicK('textareaid');">✔</button><br>
<button onclick="clickCross('textareaid');">✘</button>
Upvotes: 1
Reputation: 19113
You have to use value
not innerHTML
on <textarea/>
function clickTicK(element){
var texta = document.getElementById(element);
texta.value = '✔';
}
function clickCross(element){
var texta = document.getElementById(element);
texta.value = '✘';
}
function enable(element) {
var texta = document.getElementById(element);
texta.value = '';
}
<textarea name="textareaname" id="textareaid" placeholder="click here to edit"></textarea><br>
<button onclick="enable('textareaid');">✎</button><br>
<button onclick="clickTicK('textareaid');">✔</button><br>
<button onclick="clickCross('textareaid');">✘</button>
Upvotes: 0