ด้วยสํานึกในพระมหากรุณาธิคุณสมเด็จพระนางเจ้าสิริกิติ์เป็นล้นพ้นอันหาที่สุดมิได้
ด้วยสํานึกในพระมหากรุณาธิคุณสมเด็จพระนางเจ้าสิริกิติ์เป็นล้นพ้นอันหาที่สุดมิได้


การเช็คข้อมูลครบ แล้ว auto ใน Checkbox โดยไม่ต้องคลิก

ถาม-ตอบ แนะนำไอเดีย โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา การเช็คข้อมูลครบ แล้ว auto ใน Checkbox โดยไม่ต้องคลิก

ปัจจุบัน นักพัฒนาสามารถ ใช้ ChatGPT | Gemini | Claude | Perplexity | Deepseek ช่วยในการแก้ไขปัญหาต่างๆ ในการเขียนโปรแกรม หรือหาข้อมูลเพิ่มเติมได้ง่ายและสะดวก แนะนำให้ทุกคนใช้งานเพื่อพัฒนาศักยภาพของตัวเอง

การเช็คข้อมูลครบ แล้ว auto ใน Checkbox โดยไม่ต้องคลิก
สวัสดีค่ะ คือว่าถ้าต้องการเช็คข้อมูลว่า ถ้าuser กรอกข้อมูลครบ(ช่องที่จำเป็นต้องกรอก)  แล้วให้ติ๊ก checkbox อนุมัติโดยอัตโนมัติโดยที่ user ไม่ต้องมานั่งกด ต้องทำอย่างไรคะ  
อันนี้คือส่วนของ ปุ่ม checkbox ค่ะ
	echo '<input type="checkbox"  name="approveinfo[2]"  value="'.$approveflag1.'"  onClick="if (this.checked) this.value='Y'; else this.value='N';" '; echo $strshow; echo '>&nbsp;อนุมัติ&nbsp;&nbsp;&nbsp;';


Sudarat2536 03-07-2015 09:57:27

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • CAPTCHA Image
    Play CAPTCHA Audio
    Refresh Image


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ใช้ jquery
อย่างแรกกำหนด id ให้กับ checkbox ไว้ใช้งาน
แล้ว กำหนด css class ให้กับรายการที่จำเป็นต้องกรอก

<div style="width: 100px;">
    <form action="" method="post">
    <input class="cs_data" name="name" type="text" id="name"  />  <br>
    <textarea class="cs_data" name="address" rows="4" id="address" ></textarea>  <br>
    <select class="cs_data" name="province" id="province" >  
    <option value="">เลือกจังหวัด</option>  
    <option value="กรุงเทพ">กรุงเทพ</option>  
    </select>  
    <input type="checkbox" name="approveinfo[2]" id="approveinfo" value="Y" 
    onClick="if (this.checked) this.value='Y'; else this.value='N';" />
    </form>
</div>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function(){


    $(".cs_data").on("change",function(){
        var len_chkVal=$(".cs_data").length;
        var l=0;        
        $(".cs_data").each(function(i,k){
            if($(".cs_data").eq(i).val()!=""){
                l++;   
            }
            var chkTrue=(l==len_chkVal)?true:false;
            var chkVal=(l==len_chkVal)?"Y":"N";
            $("#approveinfo").prop("checked",chkTrue).val(chkVal);
        });
    });

})
</script>


ตัวอย่าง





ninenik 03-07-2015
 ความคิดเห็นที่ 2
แล้วถ้าจะเช็คจากหน้า js ที่กด sumit ล่ะคะ แบบพอกด submit แล้วให้ checkbox ที่ชื่อ XXX ติ๊ก อัตดนมัติทำอย่างไรคะ รบกวนด้วยค่ะ ^^!

	case "U" :
		case 'V' :
					if (document.fmain.f_riskyear.value=="") { alert("ไม่มีปี พ.ศ."); document.fmain.f_riskyear.focus(); return; }
					if (document.fmain.f_deptdesc.value=="") { alert("ไม่ระบุ กอง/ศูนย์/สำนัก"); document.fmain.f_deptdesc.focus(); return; }
					if (document.fmain.f_riskdate.value=="") { alert("ไม่ระบุ วันที่ระบุปัจจัยเสี่ยง"); document.fmain.f_riskdate.focus(); return; }
								if ((document.fmain.f_idtarget.value=="")&&(document.fmain.f_idactivity.value=="")) { alert("ไม่ระบุ ลักษณะผลกระทบที่อาจเกิดขึ้นกับกิจกรรมตามภารกิจของหน่วยงาน (เป้าหมายหรือกิจกรรม)"); document.fmain.chktarget0.focus(); return ; }
								if (document.fmain.f_desc.value=="") { alert("ไม่ระบุ เป้าหมายหรือกิจกรรม"); document.fmain.chktarget0.focus(); return ; }
								if (document.getElementById('tabsheet1').className=='displayoff')  document.getElementById('tabsheet1').className='displayon';
					        if ((document.fmain.chkint.checked==false)&&(document.fmain.chkext.checked==false)&&(document.fmain.chkboth.checked==false)) { alert("ไม่ระบุ ประเภทของสาเหตุ (ภายใน/ภายนอก)");  document.fmain.f_risksource.value=''; document.fmain.chkint.focus(); return ; }
								
								if (document.fmain.f_conttype.value=="") { alert("ไม่มี ที่มาของปัจจัยเสี่ยง"); document.fmain.f_conttype.focus(); return ; }
								if (document.fmain.f_risksubject.value=="") { alert("ไม่มี เรื่องปัจจัยเสี่ยง"); document.fmain.f_risksubject.focus(); return ; }

								if (document.getElementById('tabsheet2').className=='displayoff')  document.getElementById('tabsheet2').className='displayon';
								document.fmain.f_riskimpact.value="--";
										if  ((!document.fmain.chkO.checked)&&(!document.fmain.chkF.checked)) {
												alert("ไม่มี ประเภทของผลกระทบที่เกิด"); document.fmain.chkO.focus();  return;
										}
										strriskimpact="";
		 								if (document.fmain.chkO.checked)  strriskimpact="O"; else strriskimpact="-";
										if (document.fmain.chkF.checked)  strriskimpact+="F"; else strriskimpact+="-";
										document.fmain.f_riskimpact.value=strriskimpact;
					if (document.getElementById('tabsheet3').className=='displayoff')  document.getElementById('tabsheet3').className='displayon';
					if (document.fmain.f_result.value=="") { alert("ไม่ระบุ ความเสียหาย/ผลกระทบต่อการดำเนินงาน"); document.fmain.f_result.focus(); return; }
					if ((document.fmain.authapprove)&&(cmd=='V')) {
								chktrisktype="N";
								for (i=0;i<document.fmain.f_risktype.length;i  ) {
										if (document.fmain.f_risktype[i].checked) { chktrisktype='Y';  break; }
								}
							if (chktrisktype=='N') { alert("ไม่ระบุ Risk Type"); document.fmain.f_risktype[0].focus(); return; }
					}
						document.fmain.cmd.value=cmd;
								document.fmain.submit();
								break;


sudarat2536 03-07-2015 11:25
 ความคิดเห็นที่ 3
คือว่าจะต้องกดบันทึกก่อนเเล้วcheckbox ถึงจะขึ้น พอขึ้นเเล้ว user ก็จะบันทึกการอนุมัติอีกขั้นตอนหนึ่งค่ะ ^^


sudarat2536 03-07-2015 11:30
 ความคิดเห็นที่ 4
 

กำหนด id ให้กับ checkbox
ก่อนบรรทัด document.fmain.submit();  ก็ใส่คำสั่ง
 
document.getElementById("approveinfo").checked=true;
document.getElementById("approveinfo").value="Y";
document.fmain.submit();  
break; 


ninenik 03-07-2015
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ