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 > ถามเรื่อง list menu แสดงค่าสลับกัน เมื่อมีการคลิก radio button ครับ



 

ถามเรื่อง list menu แสดงค่าสลับกัน เมื่อมีการคลิก radio button ครับ

 



Topic : 091502

Guest




List menu กับ radio button

พอเราคลิก radio button ค่าจะแสดงอีกแบบ ตามชนิดของเงินน่ะครับ
ขอคำแนะนำหน่อยนะคับ ขอบคุณครับ



Tag : PHP, JavaScript







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-02-26 22:31:19 By : PiNG View : 1674 Reply : 14
 

 

No. 1



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

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

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

ลองใช้พวก Event OnClick ใน Radion Button ครับ ส่วนค่าต่าง ๆ ก็น่าจะแค่ใช้การ บวก ลบ คูณ หาร ธรรมดาครับ ลองเข้าไปอ่านได้จากบทความ JavaScript ครับ

Go to : JavaScript Tutorial : สอนการใช้งาน Event ของ JavaScript ในรูปแบบต่าง ๆ
Go to : Javascript Tips and Tricks : การใช้งาน JavaScript ร่วมกับ Form






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 09:23:33 By : mr.win
 


 

No. 2



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



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

ขอใช้ jQuery นะครับ

ก่อนอื่น หน้าตาแบบฟอร์มคงจะเป็นประมาณนี้นะครับ

Code
<select name="amount">
<option value="thb1">1,000 - 5,000 (THB)</option>
<option value="thb2">1,500 - 2,000 (THB)</option>
</select>
<input type="radio" name="currency" value="thb" checked>THB
<input type="radio" name="currency" value="usd">USD


ไอเดียของเราก็คือ ถ้า input[name=currency] เกิดการเปลี่ยนค่า (onChange) เราก็จะทำการเปลี่ยน option ของ select[name=amount] ตามค่าที่ถูกเลือกของ input[name=currency]

ดังนั้นสิ่งที่เราต้องทำคือ ใส่ตัวดัก event onChange ของ input[name=currency] ลงไปก่อนแบบนี้ครับ


Code (JavaScript)
<script type="text/javascript">
$(function(){
	$('input[name=currency]').change(function(){
		alert($(this).val());
	});
});
</script>


นี่เป็นวิธีดัก event นะครับ ซึ่งถ้าเกิดมีการเปลี่ยนแปลงข้อมูล มันก็จะมี alert ขึ้นมา (เพราะผมใส่ alert ไว้ในโค้ด)

ต่อไปเราก็ทำการดูว่า ค่าของ input[name=currency] มีค่าเป็นอะไร เพื่อจะได้นำไปพิจารณาว่าจะใส่อะไรลงไปใน option

Code (JavaScript)
<script type="text/javascript">
$(function(){
	$('input[name=currency]').change(function(){
		
		if($(this).val() == 'thb'){
			
		}else{
			
		}
	});
});
</script>


ขั้นตอนต่อไป เป็นการเปลี่ยน option ที่อยู่ใน select ซึ่งอันที่จริงมันไม่ใช่การเปลี่ยน แต่เป็นการลบออก แล้วใส่เข้าไปใหม่ครับ

$('select[name=amount] option').remove(); บรรทัดนี้คือการลบ option ออกไปให้หมดก่อน

$('select[name=amount]').append(option1); บรรทัดนี้คือการใส่ option เข้าไปใหม่ 1 อัน

Code (JavaScript)
<script type="text/javascript">
$(function(){
	$('input[name=currency]').change(function(){
		
		var option1,option2;

		if($(this).val() == 'thb'){
			option1 = $('<option/>',{value:'thb1'}).html('1,000 - 5,000 (THB)');
			option2 = $('<option/>',{value:'thb2'}).html('1,500 - 2,000 (THB)');
		}else{
			option1 = $('<option/>',{value:'usd1'}).html('35 - 50 (USD)');
			option2 = $('<option/>',{value:'usd2'}).html('50 - 75 (USD)');
		}
		
		$('select[name=amount] option').remove();

		$('select[name=amount]').append(option1);
		$('select[name=amount]').append(option2);

	});
});
</script>


ลองทำตามดูเป็นขั้นๆ เหมือนที่ผมอธิบาย จะได้เข้าใจนะครับ


ประวัติการแก้ไข
2013-02-28 12:29:35
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 12:28:00 By : earthchie
 

 

No. 3



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

Hall of Fame 2012

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


ตอบความคิดเห็นที่ : 2 เขียนโดย : earthchie เมื่อวันที่ 2013-02-28 12:28:00
รายละเอียดของการตอบ ::
เยี่ยมครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 12:29:58 By : Ex-[S]i[L]e[N]t
 


 

No. 4



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

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

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

เยี่ยมไปเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 12:40:18 By : mr.win
 


 

No. 5



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



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

ขอบคุณมากๆเลยนะครับ คุณวิน และคุณ earthchie ผมจะลองทำตามดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-01 22:57:41 By : pingjiab
 


 

No. 6



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



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

ตอบความคิดเห็นที่ : 2 เขียนโดย : earthchie เมื่อวันที่ 2013-02-28 12:28:00
รายละเอียดของการตอบ ::
แล้วเราจะรับค่าจาก radio button เพื่อเข้าไปทำงานใน function ยังไงครับ ขอคำแนะนำหน่อยนะครับ พอดีใหม่สำหรับเรื่องนี้ แต่เข้าใจ concept โดยรวมแล้วครับ คุณแนะนำได้ดีมากๆครับ ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 01:22:23 By : pingjiab
 


 

No. 7



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

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

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


เป็นอีกทางเลือกนึงครับ ขอแวะเข้ามาทักทายหลานชายนิดส์นึง ฮ๋าๆๆ
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="Unidentifier">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
 </head>

 <body>
 <form method="post" action="">
	<select id="currency" name="currency" style="width:200px;">
	</select>
	<input type="radio" value="THB" name="currencyChoice" />THB &nbsp;&nbsp;&nbsp;&nbsp;
	<input type="radio" value="USD" name="currencyChoice" />USD
	<br />
	<input type="submit" value="บันทึก" id="submitForm" />
</form>
<script>  
var currencyTHB = {"THB1":"1,000THB-1,500THB","THB2":"1,500THB-2,000THB","THB3":"2,000THB-2,500THB"};
var currencyUSD = {"USD1":"35USD-50USD","USD2":"50USD-65USD","USD3":"65USD-80USD"};

var currencyBox = $("select#currency");
var OptionsTHB,OptionsUSD;
// สร้างตัวเลือกสกุลเงินบาท
$.each(currencyTHB,function(index,item){
	OptionsTHB += "<option value='"+index+"'>"+item+"</option>";
});
// สร้างตัวเลือกสกุลเงินดอลลาร์
$.each(currencyUSD,function(index,item){
	OptionsUSD += "<option value='"+index+"'>"+item+"</option>";
});

// ตั้งค่าเริ่มต้นเป็นสกุลเงินบาท
$(currencyBox).append(OptionsTHB);

$("input[name='currencyChoice']").change(function(){
	var choice = $(this).val();
	$("option",currencyBox).remove();
	if(OptionsTHB.indexOf(choice) >=0 ){    		// ตรวจสอบตัวเลือกจากการกด เรดิโอ เทียบกับตัวแปรที่เก็บสกุลเงินบาท
		$(currencyBox).html(OptionsTHB);  
	}else{
		$(currencyBox).append(OptionsUSD);
	}	
});

</script>  
 </body>
</html>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 02:16:26 By : sakuraei
 


 

No. 8



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

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

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

ตอบความคิดเห็นที่ : 7 เขียนโดย : sakuraei เมื่อวันที่ 2013-03-02 02:16:26
รายละเอียดของการตอบ ::
โอว รู้จักกันเหรอครับ สองเทพ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 04:05:42 By : cookiephp
 


 

No. 9



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

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

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


ตอบความคิดเห็นที่ : 8 เขียนโดย : cookiephp เมื่อวันที่ 2013-03-02 04:05:42
รายละเอียดของการตอบ ::
เป็นหลานแท้ๆ สายเลือดเดียวกันครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 09:36:37 By : sakuraei
 


 

No. 10



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

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

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

ตอบความคิดเห็นที่ : 9 เขียนโดย : sakuraei เมื่อวันที่ 2013-03-02 09:36:37
รายละเอียดของการตอบ ::
สายเลือดช่างเข้มข้น

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 10:38:22 By : cookiephp
 


 

No. 11



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



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

เพิ่งรู้ว่า Unidentifier นี่ไอดีกู๋ป้อนะครับเนี่ย 55
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 12:05:12 By : earthchie
 


 

No. 12



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



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

รู้สึกเป็นบุญอย่างยิ่งครับ ที่มีท่านเทพทั้งหลายมาสงเคราะห์ ขอบคุณมากๆเลยนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 13:39:28 By : pingjiab
 


 

No. 13



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

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

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


ตอบความคิดเห็นที่ : 11 เขียนโดย : earthchie เมื่อวันที่ 2013-03-02 12:05:12
รายละเอียดของการตอบ ::
ช่วงนี้ไม่ค่อยมีเวลาเข้ามาตอบในไทยครีเอท เอิร์ทก็เข้ามาตอบบ่อยๆน่ะ ... 5555

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 16:26:42 By : sakuraei
 


 

No. 14



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



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

ตอบความคิดเห็นที่ : 13 เขียนโดย : sakuraei เมื่อวันที่ 2013-03-02 16:26:42
รายละเอียดของการตอบ ::
ครับ ได้เลยครับ :D

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-02 17:21:55 By : earthchie
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถามเรื่อง list menu แสดงค่าสลับกัน เมื่อมีการคลิก 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 02
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 อัตราราคา คลิกที่นี่