Tetapkan Nilai Input Menggunakan Fungsi Javascript


208

Saat ini saya menggunakan gadget YUI. Saya juga memiliki fungsi Javascript untuk memvalidasi output yang berasal dari divYUI yang menarik bagi saya:

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);

Ini milik saya 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>

Seperti yang Anda lihat pertanyaan saya adalah, bagaimana saya bisa menetapkan nilai gadget_urlmenjadi ""?


1
Coba ... Dom.get("gadget_url").set("value","");... Saya tidak begitu yakin
Sangeet Menon

Jawaban:


470

Coba ... untuk YUI

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

dengan normal Javascript

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

dengan JQuery

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

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

@Alastair saya konfirmasi - itu tidak menggunakan YUI. Namun OP dalam judul menulis "Tetapkan Nilai Input Menggunakan Fungsi Javascript" (bukan fungsi YUI) jadi jawabnya memenuhi persyaratan pertanyaan
Kamil Kiełczewski

6

Karya-karya berikut di MVC5:

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

11
javascript! = MVC5
qbantek

6
Namun dia memberikan jawaban yang benar. Ada pemula yang akan menemukan pertanyaan ini berdasarkan jawaban ini.
Matius Nichols

4

Bergantung pada usecase itu membuat perbedaan apakah Anda menggunakan javascript ( element.value = x) atau jQuery$(element).val(x);

Ketika xadalah undefinedhasil jQuery dalam String kosong sedangkan hasil javascript di "undefined"sebagai String.


1

Saya tidak menggunakan YUI, tetapi jika itu membantu orang lain - masalah saya adalah saya memiliki duplikat ID pada halaman (sedang bekerja di dalam dialog dan lupa tentang halaman di bawahnya).

Mengubah ID sehingga unik memungkinkan saya untuk menggunakan metode yang tercantum dalam jawaban Sangeet.


Hanya untuk singkatnya dan referensi di masa mendatang, semua id pada halaman SELALU harus unik
Pogrindis

1

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


0

Solusi yang disediakan oleh Kamil Kiełczewski bekerja dengan sangat baik. IMHO, jauh lebih mudah dibaca daripada document.getElementById.

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


-3

Mencoba

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>

Memperbarui

Saya tidak tahu mengapa begitu banyak downovotes (dan tidak ada komentar) - namun (untuk pembaca masa depan) tidak berpikir bahwa solusi ini tidak berfungsi - Ini bekerja dengan html yang disediakan dalam pertanyaan OP dan ini adalah solusi yang bekerja SINGKAT - Anda dapat mencobanya sendiri DI SINI

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.