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

Registered : 109,037

HOME > PHP > PHP Forum > รบกวนสอบถาม เรื่อง การนำ javascript มาเช็คค่าว่างรวมกับ Radio Button



 

รบกวนสอบถาม เรื่อง การนำ javascript มาเช็คค่าว่างรวมกับ Radio Button

 



Topic : 119595



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



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




ได้นำไปปรับใช้แล้ว แต่ ไม่สามารถเช็คค่าว่างของ Radio button ได้
แต่ส่วนของ ชื่อ นามสกุล เลขที่ สามารถ เช็คค่าว่างได้


Code (PHP)
 <script language="javascript">
		function fncSubmit()
		{
	if(document.form1.name.value == "")
	
		{
		alert('กรุณากรอก ชื่อ ');
		document.form1.name.focus();		
		return false;
		}
	if(document.form1.lname.value == "")
		{
		alert('กรุณากรอก นามสกุล ');
		document.form1.lname.focus();		
		return false;
		}	
	if(document.form1.no.value == "")
		{
		alert('กรุณากรอก เลขที่');
		document.form1.no.focus();		
		return false;
		}
		document.form1.submit();
		}
	</script>
     
      <table width="670" height="470" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <th height="470" align="left" valign="top" scope="col" >
           <form id="form1" name="form1" method="post"  action="check-test.php" OnSubmit="returnfncSubmit();">
            <h2>   แบบทดสอบนักธรรมชั้นตรี</h2>
            <h3 class="ดด" >ลงชื่อก่อนทำแบบทดสอบ</h3>
      <table width="309" border="0" cellspacing="2" cellpadding="2">
        <tr>
          <td width="89" align="center" class="ดด" >ชื่อ:</td>
          <td width="206" align="center" class="ดด" ><textarea name="name" cols="20" rows="1" id= "textfield7"  type="text" ></textarea></td>
        </tr>
        <tr>
          <td class="ดด" >นามสกุล:            </td>
          <td class="ดด" ><textarea name="lname" cols="20" rows="1" id="textfield8"  type="text" ></textarea>
		</td>
        </tr>
        <tr>
          <td width="89" class="ดด" >เลขที่:  
            </span></td>
          <td width="206" class="ดด" ><textarea  name="no" cols="20" rows="1" id="textfield9" type="text" value="" ></textarea></td>
          </tr>
      </table>
      <p>
 <?
$host="localhost";
$username="root";
$password="root";
$db="mydatabase";
$tb="testing";
 
mysql_connect($host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("Set Names UTF8");
$sql="Select * From $tb order by rand() limit 5"; 
$db_query=mysql_query($sql);
$i=0;
while($result=mysql_fetch_array($db_query))
{
$i++;
?>

<script language="JavaScript">
	function fncSubmit()
	{
		var Rows = document.frmMain.hdnRows.value;
				{
			var op1 = document.getElementById("radionNo"+<?=$i;?>+"_1");
			var op2 = document.getElementById("radionNo"+<?=$i;?>+"_2");
			var op3 = document.getElementById("radionNo"+<?=$i;?>+"_3");
			var op4 = document.getElementById("radionNo"+<?=$i;?>+"_4");
			if(op1.checked == false && op2.checked == false && op3.checked == false
			&& op4.checked == false)
			{
				alert('Please select Answer No ' + <?=$i;?>);
				return false;
			}
		}

	}
</script>

      <table width="93%" height="194" border="0" align="center">
        <tr>
          <td height="10" align="left" valign="top">
            <h4>
              <?=$i;?>.
              <input name="id[<?=$i;?>]" type="hidden" value="<?=$result["id"];?>" />
              <?=$result["question"];?>
              </div>
            </h4></td>
          </tr>
        <tr>
          <td width="18%" height="37"><input type="radio" name="c<?=$i;?>" id="radionNo<?=$i;?>_1" 
          value="1" >
            <?=$result["c1"];?></td>
          </tr>
        <tr>
          <td height="38"><input type="radio"  name="c<?=$i;?>" id="radionNo<?=$i;?>_2" value="2"  > 
            <?=$result["c2"];?></td>
          </tr>
        <tr>
          <td height="39"><input type="radio"  name="c<?=$i;?>" id="radionNo<?=$i;?>_3" value="3"  > 
            <?=$result["c3"];?></td>
          </tr>
        <tr>
          <td height="46"><input type="radio"  name="c<?=$i;?>" id="radionNo<?=$i;?>_4" value="4" >
            <?=$result["c4"];?>
            <input name="answer[<?=$i;?>]" type="hidden" value="<?=$result["answer"];?>" /><br />
        </td>
       </tr>
        </table>
      
<?
}
mysql_close();
?>		
		<input type="hidden" name="hdnRows" value="<?=$i-1;?>">
        <input type="hidden" name="line" value="<?=$i;?>">
        <input type="submit" name="Submit" value="ส่งแบบทดสอบ">
          </form>



โค้ดตัวอย่างที่นำไปปรับใช้

img

Code (JavaScript)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>ThaiCreate.Com</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

<body>

<script language="JavaScript">
	function fncSubmit()
	{
		var Rows = document.frmMain.hdnRows.value;
		for(x=1;x<=Rows;x++)
		{
			var op1 = document.getElementById("radionNo"+x+"_1");
			var op2 = document.getElementById("radionNo"+x+"_2");
			var op3 = document.getElementById("radionNo"+x+"_3");
			if(op1.checked == false && op2.checked == false && op3.checked == false)
			{
				alert('Please select Answer No ' + x);
				return false;
			}
		}

	}
</script>

<form name="frmMain" method="post" action="" OnSubmit="return fncSubmit();">

  <table width="483" border="0">
  <?
	for($i=1;$i<=10;$i++)
	{
  ?>
    <tr>
      <td width="146">No <?=$i;?> </td>
      <td width="110"><input name="radionNo<?=$i;?>" id="radionNo<?=$i;?>_1" type="radio" value="1">
      Option 1 </td>
      <td width="110"><input name="radionNo<?=$i;?>" id="radionNo<?=$i;?>_2" type="radio" value="2">
      Option 2 </td>
      <td width="99"><input name="radionNo<?=$i;?>" id="radionNo<?=$i;?>_3" type="radio" value="3">
      Option 3 </td>
    </tr>
<?
	}
 ?>
  </table>
  <input type="hidden" name="hdnRows" value="<?=$i-1;?>">
  <input type="submit" name="Submit" value="Submit">

</form>
</body>
</html>




Tag : PHP, JavaScript









ประวัติการแก้ไข
2015-10-27 21:37:28
2015-10-27 21:45:04
2015-10-27 21:46:44
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-10-27 21:35:53 By : nine2014 View : 1291 Reply : 7
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

Code (JavaScript)
			var op1 = document.getElementById("radionNo"+x+"_1");
			var op2 = document.getElementById("radionNo"+x+"_2");
			var op3 = document.getElementById("radionNo"+x+"_3");


ลอง alert ดู object แต่ล่ะตัวครับ ผมว่ามันน่าจะเป็นพวก null object น่ะครับ หรือไมก็ใช้ alert(op1.checked); มันเป็น true หรือ false น่าจะหาไม่ยากครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-27 22:02:42 By : mr.win
 


 

No. 2



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



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


ยังไม่เช็คค่าว่างไม่ได้อยู่ดีครับ
แก้ยังไงก็แก้ไม่ได้ T_T

Code (PHP)
<script language="javascript">

	function fncSubmit()
{
	if(document.form1.rdo1.checked == false 
	&& document.form1.rdo2.checked == false
	&& document.form1.rdo3.checked == false
	&& document.form1.rdo4.checked == false )
	{
		alert('โปรดเลือกคำตอบข้อ <?=$i;?> ');
		return false;
	}	
	document.form1.submit();
}
</script>


      <table width="93%" height="194" border="0" align="center">
        <tr>
          <td height="10" align="left" valign="top">
            <h4>
              <?=$i;?>.
              <input name="id[<?=$i;?>]" type="hidden" value="<?=$result["id"];?>" />
              <?=$result["question"];?>
              </div>
            </h4></td>
          </tr>
        <tr>
          <td width="18%" height="37"><input type="radio" name="c<?=$i;?>" id="rdo1" 
          value="1" >
            <?=$result["c1"];?></td>
          </tr>
        <tr>
          <td height="38"><input type="radio"  name="c<?=$i;?>" id="rdo2" value="2"  > 
            <?=$result["c2"];?></td>
          </tr>
        <tr>
          <td height="39"><input type="radio"  name="c<?=$i;?>" id="rdo3" value="3"  > 
            <?=$result["c3"];?></td>
          </tr>
        <tr>
          <td height="46"><input type="radio"  name="c<?=$i;?>" id="rdo4" value="4" >
            <?=$result["c4"];?>
            <input name="answer[<?=$i;?>]" type="hidden" value="<?=$result["answer"];?>" />
        </td>
       </tr>
        </table>



ประวัติการแก้ไข
2015-10-28 00:12:51
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 00:12:12 By : nine2014
 

 

No. 3



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



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

ตัวอย่างเอาของจขกท มาปรับปรุง
Code (PHP)
<!DOCTYPE HTML>
<html>
<head>
<title>ThaiCreate.Com</title>
<meta charset="utf-8">
<script language="JavaScript">
function fncSubmit(){
	var Rows = document.getElementsByClassName('for_checked');
	var ln=  Rows.length;
	for(var x=0;x<ln;x++){
		if (Rows[x].getAttribute('data-check')!='1'){
			alert('Please select Answer No ' + Rows[x].getAttribute('data-id'));
			return false;
		}
	}
}
function radioclick(i){
	document.getElementById('radiochk'+i).setAttribute('data-check', 1)
}
</script>
</head>
<body>
<form name="frmMain" method="post" action="" OnSubmit="return fncSubmit();">
  <table width="483" border="0">
<?php
for($i=1;$i<=10;$i++){
?>
	<tr>
		<td width="146">No <?=$i;?> </td>
		<td width="110">
			<input type="radio" name="radionNo<?=$i?>" data-id="<?=$i;?>"
				class="for_checked" id="radiochk<?=$i?>" 
				onclick="radioclick(<?=$i?>)" value="1" > Option 1 </td>
      <td width="110"><input type="radio" name="radionNo<?=$i;?>"
				onclick="radioclick(<?=$i?>)" value="2" > Option 2 </td>
      <td width="99"><input type="radio" name="radionNo<?=$i;?>"
				onclick="radioclick(<?=$i?>)" value="3" > Option 3 </td>
    </tr>
<?php
}
 ?>
  </table>
  <input type="hidden" name="hdnRows" value="<?=$i-1?>">
  <input type="submit" name="Submit" value="Submit">
</form>
</body>
</html>



ประวัติการแก้ไข
2015-10-28 03:35:07
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 03:29:34 By : NewbiePHP
 


 

No. 4



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



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


ตอนนี้แก้ได้แล้วครับ ตามคุณ NewbieXYZ เลยครับ
ขอบคุณมากๆเลยครับ

แต่ติดปัญหาอันต่อมาคือ เวลากด Submit แล้วย้อนกลับมาหน้าเดิม ในปุ่ม Radio ยังเลือกอยู่ แต่พอกด Submit อีกครั้ง มันขึ้นว่าให้เลือก ปุ่ม Radio
ทั้งๆที่เลือกไว้อยู่แล้ว แค่กดย้อนกลับมา

ar
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 18:15:05 By : nine2014
 


 

No. 5



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



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

ถ้าย้อนกลับมา ต้องเช็คว่ามีการเช็คอยู่หรือไม่ ถ้ามีการเช็ค คุณต้องกำหนด data-check="1" ไว้ที่ option แรกด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 18:23:44 By : NewbiePHP
 


 

No. 6



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



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


ตอบความคิดเห็นที่ : 5 เขียนโดย : NewbiePHP เมื่อวันที่ 2015-10-28 18:23:44
รายละเอียดของการตอบ ::
ใส่แล้ว กลายเป็นว่ามันไม่เช็คให้อะครับ
ไม่รู้ว่าใส่ถูกหรือป่าว

Code (PHP)
<td><input type="radio" name="radionNo<?=$i?>" data-id="<?=$i;?>"  data-check="1" 
				class="for_checked" id="radiochk<?=$i?>" 
				onclick="radioclick(<?=$i?>)" value="1" >
	  option
      <?=$result["c1"];?>    </td>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 19:55:01 By : nine2014
 


 

No. 7



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



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

มันเกี่ยวเนื่องกับ php ที่กำหนด attribute checked ให้กับ option ครับ
เมื่อ php กำหนดให้มีการ check ที่ ข้อนั้น ถึงจะใส่ data-check="1" ที่ option แรก
ถ้าคุณกำหนด data-check="1" โดยไม่มีการเช็ค ก็จะมองว่ามีการเช็ค แล้วเหมือนกัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-28 21:42:25 By : NewbiePHP
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนสอบถาม เรื่อง การนำ javascript มาเช็คค่าว่างรวมกับ Radio Button
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

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