Stellen Sie den Wert der Eingabe mit der Javascript-Funktion ein

208

Ich verwende derzeit ein YUI-Gadget. Ich habe auch eine Javascript-Funktion, um die Ausgabe zu validieren, die von dem stammt, das divYUI für mich zeichnet:

Event.on("addGadgetUrl", "click", function(){
    var url = Dom.get("gadget_url").value;  /* line x ------>*/
    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);

Hier ist mein 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>

Wie Sie meine Frage ist zu sehen, Wie kann ich den Wert gadget_urlzu sein ""?

Ali Taha Ali Mahboub
quelle
1
Versuchen Sie ... Dom.get("gadget_url").set("value","");... ich bin nicht ganz sicher
Sangeet Menon

Antworten:

469

Versuchen Sie ... für YUI

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

mit normal Javascript

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

mit JQuery

$("#gadget_url").val("");
Sangeet Menon
quelle
72
document.getElementById('gadget_url').value = '';
Calum
quelle
@Alastair Ich bestätige - das ist nicht mit YUI. OP im Titel schreiben jedoch "Wert der Eingabe mit Javascript-Funktion
einstellen
6

Folgendes funktioniert in MVC5:

document.getElementById('theID').value = 'new value';
Bogdan Kumpels
quelle
11
javascript! = MVC5
qbantek
6
Und doch gab er die richtige Antwort. Es gibt Neulinge, die diese Frage anhand dieser Antwort finden.
Matthew Nichols
4

Je nach Verwendungszweck spielt es eine Rolle, ob Sie Javascript ( element.value = x) oder jQuery verwenden$(element).val(x);

Wann xist undefinedjQuery führt zu einem leeren String, während Javascript "undefined"als String führt.

Schläger-Spieler
quelle
1

Ich verwende kein YUI, aber für den Fall, dass es jemand anderem hilft - mein Problem war, dass ich doppelte IDs auf der Seite hatte (arbeitete in einem Dialog und vergaß die Seite darunter).

Wenn ich die ID so änderte, dass sie eindeutig war, konnte ich die in Sangeets Antwort aufgeführten Methoden verwenden.

BSounder
quelle
Nur die Kürze und die Zukunft, alle IDs auf der Seite sollte immer eindeutig sein
Pogrindis
1

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

SMD
quelle
0

Die von Kamil Kiełczewski bereitgestellte Lösung funktioniert tatsächlich perfekt. IMHO, viel besser lesbar als document.getElementById.

function setValue(){
gadget_url.value='value to be set';
}
<input id='gadget_url' type='text'/>
<button onclick='setValue()'>Set value</button>

dsky
quelle
-3

Versuchen

gadget_url.value=''

addGadgetUrl.addEventListener('click', () => {
   gadget_url.value = '';
});
<div>
  <p>URL</p>
  <input type="text" name="gadget_url" id="gadget_url" style="width: 350px;" class="input" value="some value" />
  <input type="button" id="addGadgetUrl" value="add gadget" />
  <br>
  <span id="error"></span>
</div>

Aktualisieren

Ich weiß nicht, warum so viele Downovotes (und keine Kommentare) - aber (für zukünftige Leser) denken nicht, dass diese Lösung nicht funktioniert - Es funktioniert mit HTML in der OP-Frage und dies ist die KURZESTE Arbeitslösung - Sie können es versuchen alleine HIER

Kamil Kiełczewski
quelle