I have a simple problem. I just want to add a placeholder on an input. Here's the code:
HTML: <input type="text" name="link" class="hidden"> JQuery: var link = document.querySelector('.link'); link.style.display='block'; link.classList.remove('hidden'); if(val === 1) // for a movie link.classList.add('placeholder="Add Movie Title. ."'); else // for an external link link.classList.add('placeholder="Add External Link . ."');
As you can see, the placeholder doesn't work because the syntax is wrong. I searched related solutions to my problem but they use a different method like this
$("").attr("placeholder", "Type here to search");});
but I need something that is similar to what I used with adding style, but I'm not sure if there's other way to do it. Is there a similar way?
You just need this:
$(".hidden").attr("placeholder", "Type here to search");
classList
is used for manipulating classes and not attributes.
This line of code might not work in IE 8 because of native support problems.
$(".hidden").attr("placeholder", "Type here to search");
You can try importing a JQuery placeholder plugin for this task. Simply import it to your libraries and initiate from the sample code below.
$('input, textarea').placeholder();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With