 |
ต้องการคำนวนค่าส่งและยอดรวมด้วย jQuery แบบไม่ต้องรีเฟรชหน้าจอครับ |
|
 |
|
|
 |
 |
|
หาดูกระทู้เก่าๆ ครับ เรื่องเดิม
|
 |
 |
 |
 |
Date :
2016-10-06 17:24:22 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองเอ่านเพิ่มเติม jQuery ครับ ทำได้แบบง่าย ๆ เลย
|
 |
 |
 |
 |
Date :
2016-10-07 09:16:49 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
Sum Total: <span id='total'>2,750.20</span> บาท
<legend>
<div>
<input type='radio' name='transferfee' value='40' />ลงทะเบียน 40
</div>
<div>
<input type='radio' name='transferfee' value='60' />EMS 60
</div>
</legend>
<div>
ยอดรวมทั้งสิ้น : <span id='nettotal'></span> บาท
</div>
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<script>
$("input[name='transferfee']").click(function(){
var current = $(this),
total = $("#total").text().replace(",",""),
net = 0;
net = parseFloat(total) + parseFloat(current.val());
$("#nettotal").text(net.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ','));
});
</script>
|
 |
 |
 |
 |
Date :
2016-10-07 15:52:10 |
By :
sakuraei |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2016-10-07 17:41:42 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณมากครับ ตอนนี้ได้แล้วครับ
อยากจะถามเพิ่มเติมครับ
หากผมต้องการนำค่า nettotal ประกาศเป็นตัวแปร session ต้องเขียนอย่างไรครับ
ผมเขียน jquery ไม่ค่อยเป็นครับ เขียนแบบนี้หรือเปล่าครับ
var nettotal = $_SESSION["sumtotal"];
ผมต้องการจะนำค่า ที่ได้จาก sumtotal + ค่าส่ง ส่งค่าไปยังหน้าต่อไปเพื่อ checkout ครับ
รบกวนแนะนำทีครับ
|
 |
 |
 |
 |
Date :
2016-10-11 23:58:41 |
By :
ru |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 5 เขียนโดย : ru เมื่อวันที่ 2016-10-11 23:58:41
รายละเอียดของการตอบ ::
ตัว JQuery ไม่สามารถสร้าง $_SESSION ตรงๆได้ครับ ต้องส่งไปสร้างในไฟล์ .php
Code (PHP)
<?php session_start();?>
Sum Total: <span id='total'>2,750.20</span> บาท
<legend>
<div>
<input type='radio' name='transferfee' value='40' />ลงทะเบียน 40
</div>
<div>
<input type='radio' name='transferfee' value='60' />EMS 60
</div>
</legend>
<div>
ยอดรวมทั้งสิ้น : <span id='nettotal'></span> บาท
</div>
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<script>
$("input[name='transferfee']").click(function(){
var current = $(this),
total = $("#total").text().replace(",",""),
net = 0;
net = parseFloat(total) + parseFloat(current.val());
$("#nettotal").text(net.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ','));
$.post("create_session.php",{varname:'netTotal',value:net} , function(data){
alert(data);
});
});
</script>
create_session.php
<?php
session_start();
if(isset($_POST["varname"] ,$_POST["value"]))}
$_SESSION["{$_POST["varname"]}"][session_id()] = $_POST["value"];
echo "Now the Total amount is: ",number_format($_POST["value"],2)," Baht";
}else{
echo "You cheated on me!";
}
?>
เวลาเอาตัวแปรไปใช้ก็ แบบนี้ $_SESSION["netTotal"][session_id()] ซึ่งค่าในตัวแปรจะเป็นของยูสเซอร์คนที่กำลังใช้งานระบบ
และที่สำคัญอย่าลืมวาง <?php session_start();?> ไว้บรรทัดแรกของทุกๆไฟล์ที่มีการใช้ตัวแปร session
|
 |
 |
 |
 |
Date :
2016-10-12 08:24:52 |
By :
sakuraei |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|