Сообщение от Богдан94
|
JS стал работать во всех строчках но не правильно, во первых скрипт по увеличению или уменьшению числа на 1 не срабатывает более одного раза подряд, во вторых если изначально число было 20 то нажав на + получим 21 а затем нажав - получим 19.
|
Да, да, да, я тоже заметил, уже исправил!
echo '
<tr class="'.$color.'">
<td class="t_title">'.$cat['name'].'</td>
<td>'.$cat['characteristic'].'</td>
<td>
<form method="POST" onsubmit="" id="minus'.$id.'" style="float:right">
<input class="serle" name="test" value="'.$id.'">
<input onclick="minusOrPlus(\''.$id.'\', '.$cat['price'].', -1)" data-inc="'.$zamowienie[$id].'" class="result'.$id.'" type="submit" value=" – ">
</form>
<script>registerSubmitForm("#minus'.$id.'", "#result'.$id.'", "minus.php");</script>
<span style ="margin-left:3px" id="inc'.$id.'">'.$zamowienie[$id].'</span> шт.
<form method="POST" id="plus'.$id.'" style="float:left">
<input class="serle" name="test" value="'.$id.'">
<input onclick="minusOrPlus(\''.$id.'\', '.$cat['price'].', 1)" data-inc="'.$zamowienie[$id].'" class="result'.$id.'" type="submit" value=" + ">
</form>
<script>registerSubmitForm("#plus'.$id.'", "#result'.$id.'", "plus.php");</script>
</td>
<td>'.$cat['price'].' р</td>
<td class="nie_maly"><span id="summ'.$id.'">'.$zamowienie[$id]*$cat['price'].'</span> р</td>
</tr>
';
<script type="text/javascript">
function registerSubmitForm(formSelector, resultSelector, url) {
$(formSelector).submit(function(e) {
e.preventDefault();
var data = $(this).serialize();
$.ajax({
type: "POST",
url: url,
data: data,
success: function(result) {
$(resultSelector).html(result);
}
});
});
}
function minusOrPlus(id, kosz, amount) {
var inc = +$(".result" + id).data("inc");
inc = Math.max(0, inc + amount);
document.getElementById("inc" + id).innerHTML = inc;
var sum = inc * kosz;
document.getElementById("summ" + id).innerHTML = sum;
$(".result" + id).data("inc", inc);
}
</script>