Pertanyaan jQuery Mendengarkan Semua Perubahan Input Teks


Saya memiliki elemen input dalam bentuk yang saya ingin dapat mengekstrak nilainya ketika nilai berubah. Lihatlah Fiddle ini: http://jsfiddle.net/spryno724/WaBzW/1/.

Dengan menggunakan change acara, saya dapat menampilkan nilai dari input teks ketika input kehilangan fokus. Namun, nilai tidak diperbarui ketika formulir disetel ulang atau ketika JavaScript menghapus nilai input teks.

Adakah acara khusus yang dapat saya dengarkan yang akan dikirim kapan apa saja perubahan dibuat ke kontrol input teks?

Saya ingin menghindari pekerjaan, seperti mendengarkan ketika formulir direset, atau ketika tombol jernih ditekan. Ini adalah contoh yang disederhanakan dari apa yang aplikasi saya lakukan, dan itu akan menjadi gila cukup cepat jika saya mencoba melakukan semua itu.

Terima kasih atas waktu Anda.


9
2018-05-28 03:35


asal


Jawaban:


$(document).ready(function() {
    $('input.clear').click(function() {
        $('input.input').val('');
        $('p.display').text('The value of the text input is: ');
    });

    $('input.input').on('keyup change', function() {
       $('p.display').text('The value of the text input is: ' + $(this).val());
    });
})​

DEMO 1

Mungkin solusi ini dapat membantu Anda:

$(document).ready(function() {
    $('input.clear, input[type=reset]').on('click', function() {
        $('input.input').val('').change();
        $('p.display').text('The value of the text input is: ');
    });

    $('input.input').on('keyup change', function() {
        $('p.display').text('The value of the text input is: ' + $(this).val());
    });
});​

DEMO 2


10
2018-05-28 03:39



Pertanyaan ini adalah duplikat yang tepat dari yang lain. Lihat jawabannya dengan jumlah suara terbanyak sebagai jawaban atas pertanyaan saya:

Kejadian JS: mengaitkan acara perubahan nilai pada input teks


2
2018-05-30 20:21



Mengesampingkan val metode jQuery

HTML

<input id='myInput' name='myInputField' value='v1'>

JS

var myInput = $('#myInput');

//this will not trigger the change event
myInput.val('v2');

//override val method
var oldVal = myInput.val;
myInput.val = function(value){
   var returnVal = oldVal.call(this,value);
   myInput.change();
   return returnVal;
}

// this will trigger the change event
// myInput.val is overridden
myInput.val('v3');

CATATAN  ini hanya akan berfungsi jika metode val dipanggil myInput variabel


0
2018-03-10 17:46



Mencoba

$('#input').live('change',function() {         })

-1
2018-05-28 03:47