Postingan lainnya
fungsi perkalian javascript
Misi mastah.. gimana caranya membuat fungsi perkalian dengan javascript ? Sya blum ngerti tntang javascript, tpi lgi butuh fungsi ini..
Misalkan kita punya 3 form, form 1 dan form 2 akan dikalikan trus hasil perkaliannya itu otomatis muncul di form ke 3, mohon bantuannya gan, ato adakh refrensi video tutorialnya.?
Terimaksih sebelumnya
6 Jawaban:
Ini form apa input gan ? Setau saya form ga bisa dikali,form kumpulan dari input, button dll.
Kalo input saya anjurkan pakai jquery var val1 = $('#idinput1').val(); var val2 = $('#idinput2').val(); var kali = val1 * val2;
Trus tambah dah 1 button kalo input butuh interaksi user utk bisa atur val1, val2 dan tampilkan hasil saat diklik
$('#idbutton').click(function() { $('#idinput3').val(kali); });
Kalo javascript murni kodenya lbh panjang, utk dapat nilai 1 input aja spt ini
var val1 = document.getElementById('idinput1').value
Apakh bisa hasil perkaliannya otomatis muncul tnpa pakek tombol.? Misalnya di input1 kita isi dngan nilai 2, nah di input3 otomatis muncul nilai 2, trus pas kita isi input2 dngan nilai 3, input3 otomatis nilainya jadi 6, apa bisa kyak gtu gan.?
Coba test dulu gan, saya belom test, soalnya balas pake hp
$("#idinput1,#idinput2").each(function(){
$(this).change(function() {
if ( val1 != "" && val2 != "" ) {
$('#idinput3').val(kali);
}
})
})
kalau mau otomatis tanpa perlu klik tombol bisa. coba agan cari referensi javascript event listener, paling tidak yang umum digunakan seperti 'onclick', 'onchange'. kalau untuk kebutuhan agan saat ini 'onchange' event sebenarnya agak kurang pas, karena 'onchange' pada input elemen hanya akan berjalan setelah input tersebut lose focus / blur. kalau mau instant pakai 'oninput' / 'onkeyup'. contoh 'oninput' kodenya seperti ini
html
<input id="input1">
<input id="input2">
<input id="input3" readonly>
javascript
var input1 = document.getElementById("input1");
var input2 = document.getElementById("input2");
var input3 = document.getElementById("input3");
var val1, val2;
input1.oninput = input2.oninput = change;
function change(e)
{
if(e.target.id == 'input1')
{
val1 = Number(e.target.value);
}
else if(e.target.id == 'input2')
{
val2 = Number(e.target.value);
}
if(!isNaN(val1) && !isNaN(val2))
{
input3.value = val1 + val2;
}
else if(isNaN(val1) && !isNaN(val2))
{
input3.value = val2;
}
else if(!isNaN(val1) && isNaN(val2))
{
input3.value = val1;
}
}
Jawaban Terpilih
Wah...bener bro @rachmatsasongko, ga bisa onchange harus ganti keyup.
Punya mas @rachmatsasongko itu yg bener. Ini cuma koreksi jawaban sebelumnya (jika menggunakan jquery)
$("#input1,#input2").keyup(function() {
var val1 = $('#input1').val();
var val2 = $('#input2').val();
var kali = Number(val1) * Number(val2);
if ( val1 != "" && val2 != "" ) {
$('#input3').val(kali);
}
})
Terimakasih agan2, skrg sudah bisa, kyaknya emang lbih sdikitnya kodingnya kalo pakek jquery.. Skali lgi terimaksih para master.. Apa di sekolah koding ada kelas buat belajar jquery.?