ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingติ๊ก checkbox แล้วนำค่าด้านหลังไปบวก
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ติ๊ก checkbox แล้วนำค่าด้านหลังไปบวก  (อ่าน 1379 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« เมื่อ: 13 กุมภาพันธ์ 2015, 15:54:04 »



เช่น ถ้าติ๊กตัวเลือกที่ 1 แล้วนำค่า 500 ไปบวกกับ 1000 ด้านบน

มีวิธีเขียนโค้ดยังไงหรอครับ

โค๊ด:
<div id="sum">1000</div>
<br>
<input type="checkbox" name="pay[]" value="" />ตัวเลือกที่ 1 <INPUT TYPE="text" NAME="payment[]" Value="500" size="5"><br>
<input type="checkbox" name="pay[]" value="" />ตัวเลือกที่ 2 <INPUT TYPE="text" NAME="payment[]" Value="1500" size="5"><br>
<input type="checkbox" name="pay[]" value="" />ตัวเลือกที่ 3 <INPUT TYPE="text" NAME="payment[]" Value="700" size="5">
บันทึกการเข้า
@Roverpost
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 89
ออฟไลน์ ออฟไลน์

กระทู้: 1,816



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 13 กุมภาพันธ์ 2015, 15:57:53 »

ใช้ Javascript ครับ
บันทึกการเข้า

Shibot โปรแกรมแชทบอท พร้อมระบบไลฟ์สด ที่สามารถเพิ่มยอดขายได้จริง
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #2 เมื่อ: 13 กุมภาพันธ์ 2015, 15:58:50 »

ใช้ Javascript ครับ

มีตัวอย่างโค้ดให้ดูไหมครับ
บันทึกการเข้า
smapan
Global Moderator
เจ้าพ่อบอร์ดเสียว
*****

พลังน้ำใจ: 643
ออฟไลน์ ออฟไลน์

กระทู้: 8,272



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 13 กุมภาพันธ์ 2015, 16:15:15 »

ลองดูครับ แบบนี้ใช้ที่ต้องการรึเปล่าครับ
http://www.madirish.net/11
บันทึกการเข้า

จูมล่าโฮส สยามโฮสเว็บ modty.com
รวมที่พัก เช่ารายวัน ที่พักเช่ารายเดือนมากที่สุดแจ่มจริง
***Tel 083-757-1515 ติดปัญหา Joomla ตรงไหนรับปรึกษาฟรี โทรมาเถอะครับ ถ้าตอบได้ช่วยแน่นอน ไม่มีกั้ก. ***
sys2528
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 301
ออฟไลน์ ออฟไลน์

กระทู้: 3,601



ดูรายละเอียด
« ตอบ #4 เมื่อ: 13 กุมภาพันธ์ 2015, 16:16:58 »

ลองดูครับ แบบนี้ใช้ที่ต้องการรึเปล่าครับ
http://www.madirish.net/11



เยี่ยมครับ ตามนั้นครับ นำไปประยุกต์ก็ได้แล้วครับ  wanwan003
บันทึกการเข้า

@Roverpost
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 89
ออฟไลน์ ออฟไลน์

กระทู้: 1,816



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 13 กุมภาพันธ์ 2015, 16:18:36 »

ลองประยุกต์ดูนะครับ
http://jsfiddle.net/o9svrzyd/
บันทึกการเข้า

Shibot โปรแกรมแชทบอท พร้อมระบบไลฟ์สด ที่สามารถเพิ่มยอดขายได้จริง
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #6 เมื่อ: 13 กุมภาพันธ์ 2015, 16:31:03 »

ลองดูครับ แบบนี้ใช้ที่ต้องการรึเปล่าครับ
http://www.madirish.net/11


ยังไม่ใช่ครับ แต่ก็ขอบคุณนะครับ
บันทึกการเข้า
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #7 เมื่อ: 13 กุมภาพันธ์ 2015, 16:33:36 »

ลองประยุกต์ดูนะครับ
http://jsfiddle.net/o9svrzyd/


ตรงโจทย์เลยครับ แต่เหลือแค่ว่าพอติ๊กแล้วมันจะบวกพอไม่ติ๊กจะให้มันลบออกด้วย ยังไงผมขอลองไปปรับใช้ก่อนนะครับ ขอบคุณครับ

บันทึกการเข้า
p44n
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 105
ออฟไลน์ ออฟไลน์

กระทู้: 676



ดูรายละเอียด
« ตอบ #8 เมื่อ: 13 กุมภาพันธ์ 2015, 16:35:13 »

ทำตัวอย่างให้ดูครับ

http://jsfiddle.net/p44n/kgkdgnu1/

บันทึกการเข้า

Python, PHP OOP, MVC CodeIgniter, MongoDB, MySQL, MsSQL ,CSS Tableless, Responsive Design, Cross-platform, Javascript, jQuery, AngularJS, NodeJS,  Fackbook API, Paypal API, Omise API, Google Map API, C# Window Applications, .NET Framework, JAVA (Android Developer, JSP), Hybrid Application with Cordova + Ionic Framework, ReactJS, React Native
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #9 เมื่อ: 13 กุมภาพันธ์ 2015, 16:40:47 »

ทำตัวอย่างให้ดูครับ

http://jsfiddle.net/p44n/kgkdgnu1/


ขอบคุณครับ ผมปรับใช้ได้แบบนี้

โค๊ด:
<script type="text/javascript">
$(function() {
    $('input[type="checkbox"]').bind('click',function() {
        if($(this).is(':checked')) {
            var checkboxvalue = $(this).val();
            var sumvalue = $('#sum').html();
            var total = parseInt(checkboxvalue)   parseInt(sumvalue);
            $('#sum').html(total);
         }else{
            var checkboxvalue = $(this).val();
            var sumvalue = $('#sum').html();
            var total = parseInt(sumvalue) - parseInt(checkboxvalue);
            $('#sum').html(total);
         }
   });
});
</script>

ผมลืมบอกไปครับว่าค่าตรง checkbox ค่าของมันคือ ตัวเลือกที่ 1

โค๊ด:
<input type="checkbox" name="pay[]" value="ตัวเลือกที่ 1" />ตัวเลือกที่ 1 <INPUT TYPE="text" NAME="payment[]" Value="500" size="5"><br>
<input type="checkbox" name="pay[]" value="ตัวเลือกที่ 2" />ตัวเลือกที่ 2 <INPUT TYPE="text" NAME="payment[]" Value="1500" size="5"><br>
<input type="checkbox" name="pay[]" value="ตัวเลือกที่ 3" />ตัวเลือกที่ 3 <INPUT TYPE="text" NAME="payment[]" Value="700" size="5">
บันทึกการเข้า
p44n
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 105
ออฟไลน์ ออฟไลน์

กระทู้: 676



ดูรายละเอียด
« ตอบ #10 เมื่อ: 13 กุมภาพันธ์ 2015, 17:07:48 »

น่าจะผิดอันนะครับ
บันทึกการเข้า

Python, PHP OOP, MVC CodeIgniter, MongoDB, MySQL, MsSQL ,CSS Tableless, Responsive Design, Cross-platform, Javascript, jQuery, AngularJS, NodeJS,  Fackbook API, Paypal API, Omise API, Google Map API, C# Window Applications, .NET Framework, JAVA (Android Developer, JSP), Hybrid Application with Cordova + Ionic Framework, ReactJS, React Native
Surakrai
ก๊วนเสียว
*

พลังน้ำใจ: 71
ออฟไลน์ ออฟไลน์

กระทู้: 321



ดูรายละเอียด เว็บไซต์
« ตอบ #11 เมื่อ: 13 กุมภาพันธ์ 2015, 17:16:20 »

ตรง var checkboxvalue = $(this).val();

เปลี่ยนเป็น
var checkboxvalue = $(this).next().val();
บันทึกการเข้า
Surakrai
ก๊วนเสียว
*

พลังน้ำใจ: 71
ออฟไลน์ ออฟไลน์

กระทู้: 321



ดูรายละเอียด เว็บไซต์
« ตอบ #12 เมื่อ: 13 กุมภาพันธ์ 2015, 17:28:44 »

เพิ่มเติมจากของท่าน p44n ครับ
http://jsfiddle.net/kgkdgnu1/1/
บันทึกการเข้า
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #13 เมื่อ: 13 กุมภาพันธ์ 2015, 18:46:08 »

น่าจะผิดอันนะครับ

ครับ ผมเอาของท่าน 2T^d มาปรับ ส่วนของท่าน p44n ไม่ต้องปรับเลยครับ
บันทึกการเข้า
useronline
ก๊วนเสียว
*

พลังน้ำใจ: 8
ออฟไลน์ ออฟไลน์

กระทู้: 210



ดูรายละเอียด
« ตอบ #14 เมื่อ: 13 กุมภาพันธ์ 2015, 18:54:47 »


โค๊ด:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
input[type='text']:focus {
    outline: none;
    border-color: #9ecaed;
    box-shadow: 0 0 10px #9ecaed;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(function() {
    $('input[type="checkbox"]').bind('click',function(){
        if($(this).is(':checked')){
            var checkboxvalue = document.getElementsByName("car_giveaway_price[0]")[0].value;
            var sumvalue = $('#sum').html();
            var total = parseInt(sumvalue) - parseInt(checkboxvalue);
            $('#sum').html(total);
         }else{
var checkboxvalue = document.getElementsByName("car_giveaway_price[0]")[0].value;
            var sumvalue = $('#sum').html();
            var total =  parseInt(sumvalue)   parseInt(checkboxvalue);
            $('#sum').html(total);
}
   });
});
</script>
</head>

<body>
<div id="sum">10000</div>
<br>
<input type="checkbox" name="car_giveaway[0]" id="car_giveaway[0]" value="ตัวเลือกที่ 1" />ตัวเลือกที่ 1 <input type="text" name="car_giveaway_price[0]" id="car_giveaway_price[0]" value="500" size="5"><br>
<input type="checkbox" name="car_giveaway[1]" id="car_giveaway[1]" value="ตัวเลือกที่ 2" />ตัวเลือกที่ 2 <input type="text" name="car_giveaway_price[1]" id="car_giveaway_price[1]" value="1500" size="5"><br>
<input type="checkbox" name="car_giveaway[2]" id="car_giveaway[2]" value="ตัวเลือกที่ 3" />ตัวเลือกที่ 3 <input type="text" name="car_giveaway_price[2]" id="car_giveaway_price[2]" value="700" size="5">
</body>
</html>

ตัวอย่าง ถ้าติ๊กตัวเลือกที่ 1 แล้วเอาค่า 500 ไปลบกับ 10000

ช่วยผมหน่อยครับ นั่งแก้มาซักพักใหญ่แล้วไม่ได้เลย

ทดสอบกับเว็บนี้ได้ครับ http://www.tutorialrepublic.com/codelab.php
« แก้ไขครั้งสุดท้าย: 13 กุมภาพันธ์ 2015, 23:05:40 โดย useronline » บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์