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 > ทำยังไงที่จะไม่ให้ ListMenu Refresh ครับ ผมมีลิสต์ 2 ตัว ตัวแรกไว้แสดง category - ตัวที่ 2 แสดง subcategory



 

ทำยังไงที่จะไม่ให้ ListMenu Refresh ครับ ผมมีลิสต์ 2 ตัว ตัวแรกไว้แสดง category - ตัวที่ 2 แสดง subcategory

 



Topic : 014994

Guest




ผมมีลิสต์ 2 ตัว ตัวแรกไว้แสดง category - ตัวที่2แสดง subcategory
โดยที่ตัวแรกจะแสดงข้อมูลจากตาราง category มาแสดง แล้วเมื่อกดเลือกข้อมุลใน category
ก็จะเอา value ของค่าที่กดไป query หาในตาราง subcategory เพื่อเอามาแสดงในลิสตืตัวที่สอง
ซึ่งตอนนี้ผมก็ทำได้แล้ว คือ เมื่อกดเลือก category แล้ว ให้ไป คิวรี้ใน ตารางsubcategory แล้วเอามาแสดงใหม่ โดย รีเฟรช หน้านั้นๆอีกครั้ง ตัวอย่างโค้ดนะครับ


<script type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
//-->
}
</script>

<form name="form1" method="post" action="">
<select name="cate" onChange="MM_jumpSubMenu(this)">
<option value="t.php">All Category</option>
<? while(odbc_fetch_row($exe)){ ?>
<option value=<? echo (odbc_result($exe,"wCateID"));?>>
<? echo (odbc_result($exe,"wCategory"));?>
</option>
<? } ?>
</select>
<select name="subcate" style="width='150px'">
<option value=0>All Sub-Category</option>
<? while(odbc_fetch_row($exe1)){ ?>
<option value="<? echo (odbc_result($exe1,"wCateID"));?>">
<? echo (odbc_result($exe1,"wSubCategory"));?>
</option>
<? } ?>
</select>
</form>

ทำยังไงให้ไม่ต้องรีเฟรส หน้านี้แต่สามารถคิวรี้ข้อมูลมาแสดงได้เลยครับ
ป.ล. ใช้ MSSQL ครับ


Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 11 ส.ค. 2550 10:37:23 By : W View : 1942 Reply : 3
 

 

No. 1

Guest


วิธีนี้หากไม่ต้องการ refresh หน้าเท่าที่ผมรู้มีอยู่ 3 วิธี คือ
1.ให้ทำการ load ข้อมูลทั้งหมดมาไว้เลย แล้วเมื่อเลือก menu ตัวใด ก็ให้ submenu เปลี่ยนไปตามนั้น
2.ทำการเปิด window ใหม่เพื่อทำการ load แล้วก็ปิดมันซะ
3.ยังไม่รู้ว่าใช้วิธีอะไรครับ เคยเห็นที่เว็บไหนไม่รู้ แต่ไม่ได้ใช้วิธีที่ 1 และ 2 แน่นอน

ในวิธีที่ 1 ในส่วนของ menu ให้ใส่ onclick='check_submenu()' ไปด้วย เพื่อให้ทำการเปลี่ยนแปลงข้อมูลใน submenu โดยใน function ลองดูคำสั่ง document.all.show_submenu.innerHTML = "..." ครับ

ในวิธีที่ 2 ในส่วนของ menu ให้ใส่ onclick='check_submenu()' โดยใน function ดูคำสั่ง เปิด window ใหม่ และการส่งค่ามายัง window ที่เปิด (opener.document.....)






Date : 11 ส.ค. 2550 14:22:09 By : ลิ้ม
 


 

No. 2

Guest


THANKS จะลองดู(สักตั้ง)
Date : 11 ส.ค. 2550 14:35:23 By : W
 

 

No. 3



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

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

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

Code (PHP)
<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/

$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("thailand");
@mysql_query("SET NAMES UTF8");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>ThaiCreate.Com ListMenu</title>
<script language = "JavaScript">

//**** List Province (Start) ***//
function ListProvince(SelectValue)
{
frmMain.ddlProvince.length = 0
frmMain.ddlAmphur.length = 0

//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlProvince.options[frmMain.ddlProvince.length]= myOption

<?
$intRows = 0;
$strSQL = "SELECT * FROM province ORDER BY PROVINCE_ID ASC ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$intRows = 0;
while($objResult = mysql_fetch_array($objQuery))
{
$intRows++;
?>
x = <?=$intRows;?>;
mySubList = new Array();

strGroup = <?=$objResult["GEO_ID"];?>;
strValue = "<?=$objResult["PROVINCE_ID"];?>";
strItem = "<?=$objResult["PROVINCE_NAME"];?>";
mySubList[x,0] = strItem;
mySubList[x,1] = strGroup;
mySubList[x,2] = strValue;
if (mySubList[x,1] == SelectValue){
var myOption = new Option(mySubList[x,0], mySubList[x,2])
frmMain.ddlProvince.options[frmMain.ddlProvince.length]= myOption
}
<?
}
?>
}
//**** List Province (End) ***//


//**** List Amphur (Start) ***//
function ListAmphur(SelectValue)
{
frmMain.ddlAmphur.length = 0

//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlAmphur.options[frmMain.ddlAmphur.length]= myOption

<?
$intRows = 0;
$strSQL = "SELECT * FROM amphur ORDER BY AMPHUR_ID ASC ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$intRows = 0;
while($objResult = mysql_fetch_array($objQuery))
{
$intRows++;
?>
x = <?=$intRows;?>;
mySubList = new Array();

strGroup = <?=$objResult["PROVINCE_ID"];?>;
strValue = "<?=$objResult["AMPHUR_ID"];?>";
strItem = "<?=$objResult["AMPHUR_NAME"];?>";
mySubList[x,0] = strItem;
mySubList[x,1] = strGroup;
mySubList[x,2] = strValue;

if (mySubList[x,1] == SelectValue){
var myOption = new Option(mySubList[x,0], mySubList[x,2])
frmMain.ddlAmphur.options[frmMain.ddlAmphur.length]= myOption
}
<?
}
?>
}
//**** List Amphur (End) ***//

</script>


</head>
<form name="frmMain" action="" method="post">
Geography
<select id="ddlGeo" name="ddlGeo" onChange = "ListProvince(this.value)">
<option selected value=""></option>
<?
$strSQL = "SELECT * FROM geography ORDER BY GEO_ID ASC ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
?>
<option value="<?=$objResult["GEO_ID"];?>"><?=$objResult["GEO_NAME"];?></option>
<?
}
?>
</select>

Province
<select id="ddlProvince" name="ddlProvince" style="width:120px" onChange = "ListAmphur(this.value)"></select>

Amphur
<select id="ddlAmphur" name="ddlAmphur" style="width:200px"></select>
</form>
</body>
</html>
<?
mysql_close($objConnect);
?>


Ref : สร้าง Dependent ListMenu เลือกข้อมูลหลักและข้อมูลย่อยเปลี่ยนตามหัวข้อหลัก
Date : 2009-07-05 07:25:53 By : webmaster
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ทำยังไงที่จะไม่ให้ ListMenu Refresh ครับ ผมมีลิสต์ 2 ตัว ตัวแรกไว้แสดง category - ตัวที่ 2 แสดง subcategory
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 03
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 อัตราราคา คลิกที่นี่