我的代碼檢測輸入動態地生成的一系列的輸入字段的。每行字段都屬於一個數據庫記錄,我使用php的動態數組符號('[]')來捕獲值。 然後在輸入字段中,我想顯示價格輸入值已乘以數據從數據庫中生成的項目總數。在動態生成的輸入
我使用的JavaScript置於其內的foreach循環以檢測輸入和繁殖,但它僅適用於在第一字段中,在所述第二場在第一場示出太乘積值。
這是代碼結構:
<?php foreach ($barang->result_array() as $row): ?>
<tr>
<td><?php echo $row['nmbr']; ?> </td>
<td><?php echo $row['jumlah']?> </td>
<td><input id="pnwrn" type="text" name="pnwrn[]" value="" />
<input type="hidden" name="id_barang[]" value="<?php echo $row['id_barang']?>" />
<input type="hidden" name="jumlah[]" value="<?php echo $row['jumlah']?>" /> </td>
<td><div id="output"><script type="text/javascript">
var harga = <?php echo $row['jumlah']; ?>;
$('input').bind('input propertychange', function() {
$('#output').html($(this).val()*harga);
});
</script>
</div></td>
</tr>
<?php endforeach; ?>
我試圖使輸出顯示每一行中的多重價值,但沒有結果yet..can有人告訴我,我做我的錯誤? 感謝〜
ID在文檔上下文中必須是唯一的,使用class來代替,並使用任何橫向DOM方法來定位特定行的元素。順便說一句,你不應該在PHP循環中綁定事件。在這裏,在每次迭代,你對重新綁定已創建輸入元素的事件 –
我也懷疑,你實際上可以定義'在全球範圍內harga'幾次。這隻會覆蓋變量,每次都使用'var',我猜也應該拋出一個錯誤。 –
當我在一行值插入'pnwrn'僅在第一字段中顯示的輸出,當我改變下一行,第一場的輸出也改變 – ryuusoultaker