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 > รบกวนดูบรรทัดนี้ให้หน่อยนะครับ OnChange="window.location คือไม่ต้องการให้ refresh ทั้ง page



 

รบกวนดูบรรทัดนี้ให้หน่อยนะครับ OnChange="window.location คือไม่ต้องการให้ refresh ทั้ง page

 



Topic : 109999



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



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




Code (PHP)
<form action="page.php" method="post" name="frmMain2">
	List Menu2 	  
           <select name="lmName2" OnChange="window.location='?item1='+(document.frmMain1.lmName1.value)+'&item2='+this.value;">
		<option value=""><-- Please Select Item --></option>
		<?
		$strSQL = "SELECT * FROM district ORDER BY cdist ASC";
		mysql_query("SET NAMES tis620"); 
		$objQuery = mysql_query($strSQL);
		while($objResult = mysql_fetch_array($objQuery))
		{
			if($_GET["item2"] == $objResult["cdist"])
			{
				$sel = "selected";
			}
			else
			{
				$sel = "";
			}
		?>
		<option value="<?=$objResult["cdist"];?>" <?=$sel;?>><?=$objResult["cdist"];?></option>
		<?
		}
		?>
	  </select>

	  <?
	  if($_GET["item2"] != "")
	  {
		$strSQL = "SELECT cfmdist ,ctodist ,cprice as cpriceb FROM price WHERE cfmdist = '".$_GET["item1"]."' and  ctodist = '".$_GET["item2"]."' ";
		$objQuery = mysql_query($strSQL);
		$objResult3 = mysql_fetch_array($objQuery);
	  }

	  ?>
	<input name="txtName2" type="text" value="<?=$objResult3["cpriceb"];?>">

</form>

<form action="page.php" method="post" name="frmMain3">
	   List Menu3	  
           <select name="lmName3" OnChange="window.location='?item1='+(document.frmMain1.lmName1.value)+'='?item2='+(document.frmMain2.lmName2.value)+'&item3='+this.value;">
		<option value=""><-- Please Select Item --></option>
		<?
		$strSQL = "SELECT * FROM district ORDER BY cdist ASC";
		mysql_query("SET NAMES tis620"); 
		$objQuery = mysql_query($strSQL);
		while($objResult = mysql_fetch_array($objQuery))
		{
			if($_GET["item3"] == $objResult["cdist"])
			{
				$sel = "selected";
			}
			else
			{
				$sel = "";
			}
		?>
		<option value="<?=$objResult["cdist"];?>" <?=$sel;?>><?=$objResult["cdist"];?></option>
		<?
		}
		?>
	  </select>

	  <?		 
	  if($_GET["item3"] != "")
	  {
		$strSQL = "SELECT cfmdist ,ctodist ,cprice as cpricec FROM price WHERE cfmdist = '".$_GET["item2"]."' and  ctodist = '".$_GET["item3"]."' ";
		$objQuery = mysql_query($strSQL);
		$objResult4 = mysql_fetch_array($objQuery);
	  }

	  ?>
	<input name="txtName3" type="text" value="<?=$objResult4["cpricec"];?>">
</form>


 ท่าน chidhanan พอมีเวลารบกวน ดูเรื่อง Refresh หน้าให้หน่อยนะครับ 




Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-07-17 14:11:25 By : jay View : 1889 Reply : 10
 

 

No. 1



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



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

ใช้ ajax ซิครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 14:22:43 By : progamer2000
 


 

No. 2



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



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


อธิบายซักนิดนะครับ คำสั่ง window.location.href จะเป็นการ เปลี่ยน url ของ window browser
มันเป็นคำสั่งที่ให้เปลี่ยนทั้งหน้าอยู่แล้วครับ

แต่เมื่อเปลี่ยนหน้าแล้ว ต้องการให้ แสดงข้อมูลเก่าบางส่วน ไม่ต้องการให้เปลี่ยนข้อมูลทั้งหมดใช่ไหมครับ


และของเก่าที่คุณมีปัญหาคือ จะมีข้อมูลที่คล้ายกัน เป็น Select 4 box ใช่ไหมครับ ต้องขอโทษด้วยที่ไม่ได้เข้ามาตอบเลยนะครับ
พอดี มีงานเข้าแบบเร่งด่วน เลยไม่ได้มาตอบให้ใครเลยอะครับ

ซักครู่นะครับ เดี๋ยวมาต่อนะครับ ซัก 1 ชม. ขอโทษด้วยครับมีธุระด่วนพอดีต้องออกไปข้างนอก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 14:24:30 By : Chaidhanan
 

 

No. 3



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



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


ตอบความคิดเห็นที่ : 2 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-07-17 14:24:30
รายละเอียดของการตอบ ::
... ทุกอย่างถูกต้องครับ เวลาเลือก แล้วไม่ต้องการ refresh ทั้งหน้า ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 14:58:28 By : jay
 


 

No. 4



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : jay เมื่อวันที่ 2014-07-17 14:58:28
รายละเอียดของการตอบ ::
ตัวอย่างออกมาดังรูปครับ

p6
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 15:09:24 By : jay
 


 

No. 5



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



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


Code (PHP)
<?php
//  อ้างอิง โค๊ดเก่า มายังไงก็ไม่รู้
mysql_query("SET NAMES tis620");  //  เซทที่ หัวหลัง connect_db อันเดียวก็พอครับ ไม่ต้องทำทุก table  
//  ยกเว้น table คุณสร้าง สะเปะสะปะ มี ทั้ง tis620  utf8 ฯลฯ   
?><!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>
</head>
<body>
<script language="javascript" type="text/javascript">
function newUrl( individually){
	//  individually  0-4 Froms document.forms
	var item1 = document.frmMain1.imName1.value;
	var item2 = document.frmMain2.imName2.value;
	var item3 = document.frmMain3.imName3.value;
	var item4 = document.frmMain4.imName4.value;
		location.href='?item1='+item1+'&item2='+item2+'&item3='+item3+'&item4='+item4;
		// แต่ถ้าเกี่ยวข้องกัน มี Parent childnode 
	switch(individually){
	case 1: location.href='?item1='+item1; break;
	case 2: location.href='?item1='+item1+'&item2='+item2; break;
	case 3:	 location.href='?item1='+item1+'&item2='+item2+'&item3='+item3; break;
	default:
		location.href='?item1='+item1+'&item2='+item2+'&item3='+item3+'&item4='+item4;
	}
}
</script>
<form action="page.php" method="post" name="frmMain2">
List Menu2 	  
<select name="lmName2" OnChange="newUrl(2)">
<option value=""><-- Please Select Item --></option>
<?php
$strSQL = "SELECT cdist FROM district ORDER BY cdist ASC"; // ใช้ ฟีลด์เดียว อย่าอ้าง " * " เปลือง Bandwidth
$objQuery = mysql_query($strSQL);
while($objResult = mysql_fetch_assoc($objQuery)){
	$sel=($_REQUEST["item2"] == $objResult["cdist"]? 'SELECTED' : '');
	echo "<OPTION VALUE='$objResult[cdist]'  $sel >$objResult[cdist]</OPTION>\n";
}
mysql_free_result($objQuery);
?>
</select>

<?php
if($_REQUEST["item2"] != ""){
	// "ไม่รู้ว่า code ตรงนี้ไว้ทำอะไร เกี่ยวข้องยังไง
	$strSQL = "SELECT cfmdist ,ctodist ,cprice as cpriceb FROM price WHERE cfmdist = '".$_REQUEST["item1"]."' and  ctodist = '".$_REQUEST["item2"]."' ";
	$objQuery = mysql_query($strSQL);
	$objResult3 = mystql_fetch_array($objQuery);
	$cpriceb=$objResult3['cpriceb'];
}else $cpriceb='';
echo "<input name=txtName2 type=text value='$cpriceb' />";  // ไม่รู้ว่า Text Box ตรงนี้ไว้ทำอะไร
?>
</form>

<form action="page.php" method="post" name="frmMain3">
List Menu3	  
<select name="lmName3" OnChange="newUrl(3)">
<option value=""><-- Please Select Item --></option>
<?php
$strSQL = "SELECT cdist FROM district ORDER BY cdist ASC";  
// แล้ว TABLE frmMain3 มันใช้อันเดียวกับ frmMain2 หรือเปล่า เพราะมันเหมือนกัน
$objQuery = mysql_query($strSQL);
while($objResult = mysql_fetch_array($objQuery)){
	$sel=$_REQUEST["item3"] == $objResult["cdist"]? 'SELECTED' : '';
	echo "<OPTION VALUE='$objResult[cdist]'  $sel >$objResult[cdist]</OPTION>\n";
}
?>
</select>

<?php	 
if($_REQUEST["item3"] != ""){
	// query ตรงนี้ ไม่รู้ว่าไว้ทำอะไร
	$strSQL = "SELECT cfmdist ,ctodist ,cprice as cpricec FROM price WHERE cfmdist = '".$_REQUEST["item2"]."' and  ctodist = '".$_REQUEST["item3"]."' ";
	$objQuery = mysql_query($strSQL);
	$objResult4 = mysql_fetch_array($objQuery);
	$cpriceb=$objResult3['cpricec'];
}else $cpricec='';
echo "<input name=txtName3 type=text value='$cpricec' />";
?>
</form>
</body>
</html>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 15:16:02 By : Chaidhanan
 


 

No. 6



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



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


เพิ่งเห็นคห 4 น่าจะประยุกต์ไปใช้ได้แล้วนะครับ ทำแบบเดียวกันครับ onchange="newUrl()" แบบเดียวกันครับ
ลักษณะการคิวรี่ ก็แบบเดียวกัน กับ frmMain2 - 3
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 15:20:09 By : Chaidhanan
 


 

No. 7



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



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


ตอบความคิดเห็นที่ : 6 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-07-17 15:20:09
รายละเอียดของการตอบ ::
อันนี้ Database ครับ มี 2 table
... ... table district
Field
id cdist
1 คลองเตย
2 คลองสาน
3 คลองสามวา
4 คันนายาว
5 จตุจักร
6 จอมทอง
7 ดอนเมือง
8 ดินแดง
9 ดุสิต
10 ตลิ่งชัน
11 ทวีวัฒนา
12 ทุ่งครุ
13 ธนบุรี

table price
field
id cfmdist ctodist price
1 คลองเตย คลองเตย 161
2 คลองเตย คลองสาน 198
3 คลองเตย คลองสามวา 377
4 คลองเตย คันนายาว 284
5 คลองเตย จตุจักร 235
6 คลองเตย จอมทอง 222
7 คลองเตย ดอนเมือง 358
8 คลองเตย ดินแดง 185
9 คลองเตย ดุสิต 198

ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 15:32:27 By : jay
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : jay เมื่อวันที่ 2014-07-17 15:32:27
รายละเอียดของการตอบ ::
... สมมุติ select จุดเริ่มต้น = คลองเตย (ใช้ table district)
select จุดที่ 1 = คลองสาน (ใช้ table district)
ช่องขวามือ คือ price (ใช้ table price มี3 field คือ cfmdist,ctodist,cprice)
Code (PHP)
 <?php
if($_REQUEST["item2"] != ""){
	// "ไม่รู้ว่า code ตรงนี้ไว้ทำอะไร เกี่ยวข้องยังไง  (select Record ที่ตรงกับจุดเริ่มต้น=cfmdist จุดที่ 1=ctodist  แล้วก็แสดง field price)
	$strSQL = "SELECT cfmdist ,ctodist ,cprice as cpriceb FROM price WHERE cfmdist = '".$_REQUEST["item1"]."' and  ctodist = '".$_REQUEST["item2"]."' ";
	$objQuery = mysql_query($strSQL);
	$objResult3 = mystql_fetch_array($objQuery);
	$cpriceb=$objResult3['cpriceb'];
}else $cpriceb='';
echo "<input name=txtName2 type=text value='$cpriceb' />";  // ไม่รู้ว่า Text Box ตรงนี้ไว้ทำอะไร (แสดงราคาใช่องขวามือครับ)
?>
   

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 15:53:50 By : jay
 


 

No. 9



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



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


Code (PHP)
<?php
mysql_connect('localhost', 'test', 'test');
mysql_select_db('test');
mysql_query("SET NAMES tis620");  //  เซทที่ หัวหลัง connect_db อันเดียวก็พอครับ ไม่ต้องทำทุก table  
//  ยกเว้น table คุณสร้าง สะเปะสะปะ มี ทั้ง tis620  utf8 ฯลฯ 
///////////////////////////////////////////////////////////
function getDistrict($m_slc){
	global $price_list; $price_list=array();
	$strSQL = "SELECT * FROM price where cfmdist='$m_slc' ORDER BY ctodist";  
	$rs = mysql_query($strSQL); $price=0;
	while($ro = mysql_fetch_assoc($rs)) $price_list[$ro['ctodist']]=$ro; mysql_free_result($rs);
}
///////////////////////////////////////////////////////////
function getOption($slc, $pl){
	$txt='';
	foreach($pl as $key=>$ro){
		$sel=($slc== $ro["ctodist"]? 'SELECTED' : '');
		$txt .= "<OPTION VALUE='$ro[ctodist]'  $sel >$ro[ctodist]</OPTION>\n";
	} mysql_free_result($rs);
	return $txt;
}
///////////////////////////////////////////////////////////
function district_js($pl){
	$txt='var district=Array()'."\n";
	foreach($pl as $key=>$ro){ $txt .= "district['$ro[ctodist]']=$ro[price];\n"; }
	return $txt;
}
///////////////////////////////////////////////////////////
$mainSelect=isset($_REQUEST['mainSelect'])? $_REQUEST['mainSelect'] : '';
getDistrict($mainSelect);
$mainOption='';
$strSQL = "SELECT cdist FROM district ORDER BY cdist ASC"; // ใช้ ฟีลด์เดียว อย่าอ้าง " * " เปลือง Bandwidth
$rs = mysql_query($strSQL);
while($ro = mysql_fetch_assoc($rs)){
	$sel=($mainSelect == $ro["cdist"]? 'SELECTED' : '');
	$mainOption .= "<OPTION VALUE='$ro[cdist]'  $sel >$ro[cdist]</OPTION>\n";
}
mysql_free_result($rs);

$ttl=0;
if($mainSelect){
	for ($i=1; $i<5; $i++){ 
		$m='slc'.$i;
		$$m=$_REQUEST[$m];
		$ttl += $price_list[$$m]['price'];
	}
}
///////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////
?><!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>
</head>
<body>
<script language="javascript" type="text/javascript">
<?php echo district_js($price_list); ?>
function getPrice(vl, id){
	var prz=document.frmMain['price'+id];
	ttl += district[vl] - prz.value;
	document.getElementById('ttl').innerHTML = ttl;
	prz.value=district[vl];
}
var ttl=<?php echo $ttl; ?>;
</script>
<form action="" method="post" name="frmMain">
<table border="0" cellpadding="0" cellspacing="0">
<tr><td>เขต <select name="mainSelect" OnChange="this.form.submit()">
<option value=""><-- Please Select Item --></option><?php echo $mainOption; ?>
</select>
</td><td rowspan="5"><center>&nbsp;&nbsp;&nbsp;รวมค่าบริการ <label id="ttl"><?php echo $ttl; ?></label> บาท&nbsp;&nbsp;&nbsp;<br />
<input type="submit" value="Save"  /></center>
</td></tr>
<tr><td>จุด 1<select id="slc1" OnChange="getPrice( this.value, 1)" style="width: 150px" >
	<option value="-"><-- Please Select Item --></option><?php echo getOption($im1, $price_list); ?>
	</select><input name="price1" type="text" value="<?php echo $price_list[$im1]['price'];?>" style="width: 60px; text-align: right" /></td></tr>
<tr><td>จุด 2<select id="slc2" OnChange="getPrice( this.value, 2)" style="width: 150px" >
	<option value="-"><-- Please Select Item --></option><?php echo getOption($im2, $price_list); ?>
	</select><input name="price2" type="text" value="<?php echo $price_list[$im2]['price'];?>" style="width: 60px; text-align: right"/></td></tr>
<tr><td>จุด 3<select id="slc3" OnChange="getPrice( this.value, 3)" style="width: 150px" >
	<option value="-"><-- Please Select Item --></option><?php echo getOption($im3, $price_list); ?>
	</select><input name="price3" type="text" value="<?php echo $price_list[$im3]['price'];?>" style="width: 60px; text-align: right"/></td></tr>
<tr><td>จุด 4<select id="slc4" OnChange="getPrice( this.value, 4)" style="width: 150px" >
	<option value="-"><-- Please Select Item --></option><?php echo getOption($im4, $price_list); ?>
	</select><input name="price4" type="text" value="<?php echo $price_list[$im4]['price'];?>" style="width: 60px; text-align: right"/></td></tr>
</table>
</form>
</body>
</html>


ลองดูครับ


ประวัติการแก้ไข
2014-07-17 19:18:36
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-17 19:17:13 By : Chaidhanan
 


 

No. 10



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



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


ตอบความคิดเห็นที่ : 9 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-07-17 19:17:13
รายละเอียดของการตอบ ::
... ขอบคุณมากครับ ตรงกับความต้องการครับ
ตรง Save กดแล้วยัง Refresh อยู่ ค่าไม่เป็น 0 ครับ
select อันแรก ยัง Refresh อยู่ครับ .......

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-18 16:43:00 By : jay
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนดูบรรทัดนี้ให้หน่อยนะครับ OnChange="window.location คือไม่ต้องการให้ refresh ทั้ง page
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่