Я использовал для заполнения ввода текста во время выпадающего щелчка. но после того, как я выбрал из раскрывающегося списка, текстовый ввод все еще пуст. У меня есть echo $ jsArray, и он показывает данные. текстовый ввод должен получать данные, а я выбираю из раскрывающегося списка. вот код:
<script type="text/javascript">
<?php echo $jsArray; ?>
function changeValue(id){
document.getElementById('harga_satuan').value = hargaSatuan[id].satu;
};
</script>
<form action='create_detail.php' method='post'>
<table class='table table-hover table-responsive table-bordered'>
<tr>
<td>No. Detail PO </td>
<td><input type='text' name='detail_id' class='form-control' value='<?php echo $number; ?>' required></td>
</tr>
<tr>
<div id="angka">
<div id="input">
<td>Quantity Yang Dipesan</td>
<td><input type='text' class='qty_order' id='qty_order' name='qty_order' class='form-control' onkeyup="hitung()"></td>
</div>
</div>
</tr>
<tr>
<div id="angka">
<div id="input">
<td>Harga Per Unit(Rp)</td>
<td><input type='text' class='harga_satuan' id='harga_satuan' name='harga_satuan' class='form-control' onkeyup="hitung()"></td>
</div>
</div>
</tr>
<tr>
<td>ID Barang</td>
<td>
<?php
// read from the database
include_once 'objects/barang.php';
$barang = new Barang($db);
$stmt = $barang->read();
// put them in a select drop-down
echo "<select class='form-control' id='id_barang' name='id_barang' onchange='changeValue(this.value)'>";
echo "<option>Select ..</option>";
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$id_barang = $row['id_barang'];
$nama_barang = $row['nama_barang'];
$harga_satuan = $row['harga_satuan'];
echo "<option value='" . $row['id_barang'] . "'>" . $row['id_barang'] . "</option>";
$jsArray .= 'hargaSatuan["' . $row['id_barang'] . '"] = {satu:"' . addslashes($row['harga_satuan']) . '"};\n';
}
echo "</select>";
?>
</td>
</tr>
но при вводе текста данные не отображаются. не могли бы вы помочь мне исправить это?
попробуй это
function changeValue(){
var sbox = document.getElementById("id_barang");
document.getElementById('harga_satuan').value = sbox.options[sbox.selectedIndex].value;
};
и вызвать функцию, подобную этой
echo "<select class='form-control' id='id_barang' name='id_barang' onchange='changeValue()'>";