一段代码
<div class="col-md-4"><b id="sisasld">3000000</b></div><hr>
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<td>Produk</td>
<td>subtotal</td>
<td>nominal</td>
<td>% lunas</td>
<td>aksi</td>
</tr>
</thead>
<tbody>
<?php
$jml=0;
$larikj=array();
if ((isset($_GET['idak'])) && (adasaldo($_GET['idak'])) && (get_statusbyid($_GET['idak']))) : ?>
<?php
$reset=adasaldo($_GET['idak']);
$datast=get_statusbyid($_GET['idak']);
foreach ($datast as $stdata) {
$larikj[]=$stdata['subtotal'];
?>
<tr>
<td><?php echo($stdata['kdbarang']);?></td>
<td id="<?php echo('stto'.$stdata['ids']);?>"><?php echo($stdata['subtotal']);?></td>
<td>
<script type="text/javascript">
function ketikbyr(rpbyr){
var stto=document.getElementById('stto'+rpbyr);
var sisald=document.getElementById('sisasld');
var uang=document.getElementById('bayarr'+rpbyr).value;
if (uang > sisasld.innerHTML) {
alert("saldo anda tidak mencukupi");
}else if(uang.length==0){
sisasld.innerHTML=<?php echo($reset[0]['sisa']);?>;
document.getElementById('prsn'+rpbyr).value=0+'%';
}else{
document.getElementById('prsn'+rpbyr).value=parseInt((uang/stto.innerHTML)*100)+'%';
sisasld.innerHTML=sisasld.innerHTML-uang;
}
//document.getElementById("").value=
}
</script>
<input type="number" name="bayar" class="form-control" id="<?php echo('bayarr'.$stdata['ids']);?>" onkeyup="ketikbyr(<?php echo($stdata['ids']);?>)"></td>
<td><input type="text" name="persentase" class="form-control" id="<?php echo('prsn'.$stdata['ids']);?>"></td>
<td><a href="#" class="btn btn-sm btn-primary">bayar</a></td>
</tr>
<?php
}
$jml=array_sum($larikj);?>
<?php else: ?>
<tr>
<td colspan="5">Hasil tidak ditemukan :(</td>
</tr>
<?php endif; ?>
<tr>
<td> <b class="text-right"> Total Hutang</b></td>
<td><span id="sisainv">
<?php
echo($jml);
?>
</span></td>
</tr>
</tbody>
</table>
</div>
<hr>
在onkeyup的状态下进行比较时,只有元素idtag = sisasld 的第一个数字,但事实是假的,因为数字4小于3000000,
还有其他解决方案吗?
答案 0 :(得分:1)
首先,您的变量名称错误。
你说:
var sisald=document.getElementById('sisasld');
但请查看:
if (uang > sisasld.innerHTML) {
然后你必须将innerHTML的Text解析为Integer,这样你就可以将它与另一个Integer进行比较。 (不知道uang是否是整数)
if (uang > parseInt(sisasld.innerHTML)) {