Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 107,976

HOME > PHP > PHP Forum > ถ้าต้องการเขียน check ว่า ปุ่ม checkbox นี้ check หรือ uncheck ต้องเขียนเงื่อนไขยังไงหรอคะ



 

ถ้าต้องการเขียน check ว่า ปุ่ม checkbox นี้ check หรือ uncheck ต้องเขียนเงื่อนไขยังไงหรอคะ

 



Topic : 132257



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



ถ้าต้องการเขียน check ว่า ปุ่ม checkbox นี้ check หรือ uncheck ต้องเขียนรูปแบบยังไงคะ แบบ ถ้าcheck แล้ว ให้ทำ+ ข้อมูล ถ้า uncheck ก็ให้ลบข้อมูล

ตอนนี้เขียนไปแบบนี้ค่ะ ไม่ค่อยเข้าใจ งง ต้องทำโปรเจ็ค ช่วยดูให้หน่อยนะคะ

Code (JavaScript)
    if(document.messageCheckbox.checked == true){
             		   $('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum++;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = ตัวแปล
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold + parseInt(data);
                       $('#showprice').html(pricenew);
                        });
			}else{
            	$('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum--;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = ตัวแปล
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold - parseInt(data);
                       $('#showprice').html(pricenew);
                        });
            }




Tag : PHP, jQuery, Appserv









ประวัติการแก้ไข
2018-10-07 21:53:23
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-10-07 21:43:42 By : 1851112778284115 View : 354 Reply : 14
 

 

No. 1



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


Code (JavaScript)
if( $('checkbox').prop('checked') ){
   //is checked
}else{
   //none checked
}







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-07 21:53:56 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ไม่ได้อ่ะค่ะ ตรงส่วน else หนูผิดตรงไหนรึเปล่าคะ

Code (JavaScript)
if ($('messageCheckbox').prop('checked')){
             		   $('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum++;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = Class
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold + parseInt(data);
                       $('#showprice').html(pricenew);
                        });
			}else{
             		   $('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum--;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = Class
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold - parseInt(data);
                       $('#showprice').html(pricenew);
                        });
            }



ประวัติการแก้ไข
2018-10-07 22:49:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-07 22:45:11 By : 1851112778284115
 

 

No. 3



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


เป็น class ต้องใส่จุด
เป็น id ต้องต้องใส่ #
เป็น tag ต้องใส่ชื่อ tag
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-07 23:15:06 By : Chaidhanan
 


 

No. 4



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

เป็น Class ค่ะ ใส่ .messageCheckbox แล้วก็ไม่ได้ค่ะ


ประวัติการแก้ไข
2018-10-07 23:26:12
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-07 23:25:41 By : 1851112778284115
 


 

No. 5



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


ลองทดสอบ แค่ if else ก่อน
if ($('.messageCheckbox').prop('checked')){
alert(' is checked');
}else{
alert(' no chedked');
}

คิดว่า if else คงไม่มีปัญหา น่าจะมีปัญหา การกำหนด function นั้นแหล่ะมั้ง
วงเล็บล่างมันไม่ครบ และ ใช้ เป็นฟังก์ชั่นเดียวแล้วเอา if else เข้าไปเช็คข้างใน เพื่อกำหนดการทำงาน ดีกว่าไหม
เขียนแบบนั้นมันซ้ำซ้อนไปหรือเปล่า

Code (JavaScript)
var sign = $('.messageCheckbox').prop('checked') ? 1 : -1 
$(".messageCheckbox').click((e)=>{
   //......
   //.....
   //.....
    fieldNum += sign;  //ถ้า sign มีค่าเป็น - ก็จะทหน้าที่ เหมือน fieldNum--; ถ้าเป็นบวกก็เหมือน fieldNum++
    //.... 
    //....
});


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 00:01:50 By : Chaidhanan
 


 

No. 6



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

if else มันทำงานแค่ตรง else อ่ะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 00:53:56 By : 1851112778284115
 


 

No. 7



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


งั้นขอดู html ที่เป็น checkbox หน่อยครับ เขียนอะไรผิดหรือเปล่า อาจจะอ้างอิง อะไรผิด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 10:58:42 By : Chaidhanan
 


 

No. 8



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

checkbox เป็นการวนลูปค่ะ


Code (PHP)
if ($_SESSION['user_id']) {
            if ($row['booking'] == "ว่าง") {
                echo '<td id="col_checking" class="center" ><input class="messageCheckbox" id="booking'.$row["time_id"].'" type="checkbox" name="booking'.$row["time_id"].'" value="'.$row["time_id"].'"></input></td>';

            } else {
                echo '<td class="center"><input class="messageCheckbox" id="booking'.$row["time_id"].'" type="checkbox" name="booking'.$row["time_id"].'" value="'.$row["time_id"].'" disabled></input>



ประวัติการแก้ไข
2018-10-08 22:57:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 22:51:58 By : 1851112778284115
 


 

No. 9



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

พอใส่แบบนี้แล้วค่ามันแสดงติดลบตั้งแต่ค่าแรกเลยอ่ะค่ะ

Code (PHP)
if ($('.messageCheckbox').prop('checked')){
                      $('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum++;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = ตัวแปล
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold + parseInt(data);
                       $('#showprice').html(pricenew);
                        });
					});
                    }else{
                     $('.messageCheckbox').click(function(){
                       var priceID=$(this).val();
                       var priceold=parseInt($('#showprice').html());
                       fieldNum--;	
                        $('#fieldNum').html(fieldNum);	//# = ID, . = ตัวแปล
						$.get('checkprice.php?price='+priceID, function(data){
                       // alert(data);
                       var pricenew= priceold - parseInt(data);
                       $('#showprice').html(pricenew);
                        });
                     });
                     }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 23:12:29 By : 1851112778284115
 


 

No. 10



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


และคำสั่ง คห2 อยู่ใน loop เหมือนกันไหม
เดาเอาว่าอยู่ใน loop เหมือนกัน ไม่งั้น จะมี If มาตรวจสอบทำไม

ก็บอกได้เลยว่า algorithm ไม่ถูกต้อง
การกำหนด function ให้ class ไม่ต้องทำเป็น loop อาศัยอ้างอิง ข้อมูล ใน tag ที่แตกต่างกัน

1 เปลี่ยน algorithm ในการเขียนใหม่ ทำโค๊ดให้สั้นลง ถ้าเป็นไปได้ ส่งให้ไปทำงาน ที่ฝั่ง client ใช้ javascript ให้มากที่สุด ลดโหลด server
2 ลดการใช้ id ที่ซ้ำซ้อนลง id ควรจะเป็นแบบเฉพาะเจาะจง พยายามใช้ class ในการทำงาน ที่มี pattern เดียวกัน
3 ตั้งชื่อสั้นๆ แล้วสื่อความหมายได้ ให้ตั้งชื่อสั้นๆ เช่น booking เขียนแค่ bk_ ก็น่าจะเข้าใจ
เพราะยิ่งชื่อยาวจำนวนในการส่งข้อมูลผ่านเนตก็มากขึ้น
4 ตัวแปร global ประยุกต์ใช้งานให้ทันสมัยมากขึ้น ปลอดภัยมากขึ้น
5 javascript บางคำสั่ง ใช้ pure javascript บ้างก็ได้ ไม่ต้องผ่าน jquery ก็ได้สั่งงานตรงเลย

Code (PHP)
<?php
if (isset($_SESSION['user_id'])) {
	$free = $row['booking'] == "ว่าง";
?>
	<td class="center<?=($free ? ' col_checking' : '')?>" >
		<input class="messageCheckbox" id="booking<?=$row["time_id"]?>" <?=($free ? '' : 'disabled')?>
				type="checkbox" name="booking<?=$row["time_id"]?>" value="<?=$row["time_id"]?>"></td>
<?php
}

?>
<script>
// ส่วนของ javascript
$('.messageCheckbox').click(function(){
	var priceID = this.value;
//	var priceold = parseInt($('#showprice').html()); // ตรงนี้เป็น id แน่ใจ่วามีอันเดียวหรือเปล่า
	var priceold = $(this).parents('tr').eq(0).find('#showprice').html(); // เปลี่ยนมาใช้แบบนี้ กับการใช้ id ที่ซ้ำซ้อนกัน
	fieldNum += this.checked ? 1 : -1;	// ตรงนี้ คือการตรวจสอบ ปุ่มเช็ค เขียนใน event click
	$('#fieldNum').html(fieldNum);	//# = ID, . = Class ตรงนี้ก็ด้วยเรื่อง  ID ซ้ำไหม ลองเขียนแบบตัวอย่าง priceold
	$.get('checkprice.php?price='+priceID, function(data){
		// alert(data);
		var pricenew= priceold + parseInt(data);
		$('#showprice').html(pricenew); // นี่ก็ด้วย อ้างอิง id มีปัญหาแน่นอน
	});
});


ปล. ดูเรื่องการใช้ ID ให้ดีครับ ถ้าใช้ id ในการอ้างอิงต้องคำนึงไว้ว่า ในข้อมูลหนึ่งๆ ถ้ามี id หลายอัน จะอ้างอิง id แรกเท่านั้น


ประวัติการแก้ไข
2018-10-08 23:53:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-08 23:50:21 By : Chaidhanan
 


 

No. 11



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตรง priceold ราคาไม่ขึ้นอ่ะค่ะ อยากให้พอคลิก checkbox แล้วบวกราคาไปตาม checkbox ที่คลิก พอ uncheck ก็ลบค่าอ่ะค่ะ ต้องเขียนยังไงหรอค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-09 02:15:37 By : 1851112778284115
 


 

No. 12



โพสกระทู้ ( 7,993 )
บทความ ( 2 )



สถานะออฟไลน์


ตัวอย่างก็ บันทัด 17 ไงครับ คอมเม้นท์ ก็บอกแล้ว ต้องประยุกต์ ให้ตรงกับข้อมูลที่ทำไว้ครับ
ผมเดาเอาว่า ข้อมูลของคุณเป็นแบบนี้ เดานะเดา
Code (PHP)
<tr>
  <td>description</td>
  <td id="showprice">123456</td>
  <.td><input type="checkbox" ></td>
</td>


จากตัวอย่าง บันทัด 17
Code (JavaScript)
var priceold = $(this).parents('tr').eq(0).find('#showprice').html(); // เปลี่ยนมาใช้แบบนี้ กับการใช้ id ที่ซ้ำซ้อนกัน


$(this).parents('tr').eq(0) คำสั่งนี้ ใช้ค้นหาว่า tr ที่ครอบข้อมูลคือตัวไหน
.find('#showprice').html() แล้วค้นหาว่า td ที่เก็บข้อมูล showprice เก็บอะไรไว้

ส่วนการอ้างอิง สำหรับใน function ajax success คุณต้อง กำหนดตัวแปร ไว้อ้างอิง tr ก่อนที่จะใช้ ajax
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-09 06:36:00 By : Chaidhanan
 


 

No. 13



โพสกระทู้ ( 157 )
บทความ ( 0 )



สถานะออฟไลน์


หวังว่าจะทำงานได้นะครับ
Code (JavaScript)
$('.checkboxClass').on('click', function(){
    var price = 0;
    $.each($('.checkboxClass'), function(){
        if($(this).is(':checked')){
            price = parseFloat(price) + parseFloat($(this).val());
        }
    });
    $('#showprice').html(price);
});

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-09 10:00:35 By : Jatmentz
 


 

No. 14



โพสกระทู้ ( 21 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ทำได้แล้วนะคะ ขอบคุณมากๆเลยค่ะ สำหรับความรู้และคำแนะนำทุกๆอย่าง น้ำตาจะไหลกว่าจะได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-11 21:34:42 By : 1851112778284115
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถ้าต้องการเขียน check ว่า ปุ่ม checkbox นี้ check หรือ uncheck ต้องเขียนเงื่อนไขยังไงหรอคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2019 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่