Home » Javascript » Set Value of Input Using Javascript Function

Set Value of Input Using Javascript Function

Posted by: admin November 29, 2017 Leave a comment

Questions:

I’m currently using a YUI gadget. I also do have a Javascript function to validate the output that comes from the div that YUI draws for me:

Event.on("addGadgetUrl", "click", function(){
        /* line x ------>*/     var url = Dom.get("gadget_url").value;
                if (url == "") {
                    error.innerHTML = "<p> error" /></p>";
                } else {
        /* line y ---> */ 
                       /*  I need to add some code in here to set the value of "gadget_url" by "" */
                }
            }, null, true);

Here is my div:

<div>
<p>URL</p>
<input type="text" name="gadget_url" id="gadget_url" style="width: 350px;" class="input"/>
<input type="button" id="addGadgetUrl" value="add gadget"/>
<br>
<span id="error"></span>
</div>

As you can see my question is, how can I set the value of gadget_url to be ""?

Answers:

Try…
for YUI

Dom.get("gadget_url").set("value","");

with normal Javascript

document.getElementById('gadget_url').value = '';

with JQuery

$("#gadget_url").val("");

Questions:
Answers:
document.getElementById('gadget_url').value = '';

Questions:
Answers:

The following works in MVC5:

document.getElementById('theID').value = 'new value';

Questions:
Answers:

Depending on the usecase it makes a difference whether you use javascript (element.value = x) or jQuery $(element).val(x);

When x is undefined jQuery results in an empty String whereas javascript results in "undefined" as a String.

Questions:
Answers:

I’m not using YUI, but in case it helps anyone else – my issue was that I had duplicate ID’s on the page (was working inside a dialog and forgot about the page underneath).

Changing the ID so it was unique allowed me to use the methods listed in Sangeet’s answer.