|
|
|
ทำ Dependent ListMenu ดูตามตัวอย่างแล้วก็ยังไงไม่ได้อ่าครับ Y-Y |
|
|
|
|
|
|
|
ผมจะเอาตัว list menu ที่บอกเลือก list menu ตัวแรกแล้ว list menu ตัวที่ 2 จะเปลี่ยนตัวเลือกไปตาม ที่เลือก ตัวแรกไว้ แบบ
https://www.thaicreate.com/community/dependant-listmenu-dropdownlist.html
แต่ของผม ทำแค่ 2 อัน ทีนี้ผมก็เอาไปทดลอง แก้ไปนิดนึง ตามนี้นะครับ
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("shop2");
@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
//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlProvince.options[frmMain.ddlProvince.length]= myOption
<?
$intRows = 0;
$strSQL = "SELECT * FROM p_type";
$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["tm_id"];?>;
strValue = <?=$objResult["pt_id"];?>;
strItem = <?=$objResult["pt_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) ***//
</script>
</head>
<form action="" method="post" enctype="multipart/form-data" name="frmMain">
Geography
<select name="ddlGeo" id="ddlGeo" onChange = "ListProvince(this.value)">
<option value="" selected>กรุณาเลือก</option> <?
$strSQL = "SELECT * FROM p_topmenu";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
?>
<option value="<?=$objResult["tm_id"];?>"><?=$objResult["tm_pro"];?></option>
<?
}
?>
</select>
Province
<select id="ddlProvince" name="ddlProvince" style="width:120px"></select>
</form>
</body>
</html>
<?
mysql_close($objConnect);
?>
พอรันออกมา
ตัวแรกมีให้เลือก แต่ตัวที่ 2 ไม่มีอ่าไรขึ้นเลย ผมละ งง วันนี้ทั้งวัน นั่งค้นหาตาม google ลองมาหลายอันมาก ก็ยังได้ผลออกมาแบบเดียวกัน ตัวที่ 2 ไม่มีอ่าไรขึ้นเลย
พอรันออกมาแล้วกดดู Source ดูว่ามันดึงข้อมูลมาได้ไหมก็ได้ผลตามนี้
Code (PHP)
<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
//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlProvince.options[frmMain.ddlProvince.length]= myOption
x = 1;
mySubList = new Array();
strGroup = 2;
strValue = 1;
strItem = Bitcash EX;
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
}
x = 2;
mySubList = new Array();
strGroup = 3;
strValue = 4;
strItem = Web Money;
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) ***//
</script>
</head>
<form action="" method="post" enctype="multipart/form-data" name="frmMain">
Geography
<select name="ddlGeo" id="ddlGeo" onChange = "ListProvince(this.value)">
<option value="" selected>กรุณาเลือก</option> <option value="2">บัตรเงินสดออนไลน์</option>
</select>
Province
<select id="ddlProvince" name="ddlProvince" style="width:120px"></select>
</form>
</body>
</html>
มันก็ดึงค่ามาได้แต่ไม่แสดงผล
รบกวนผู้รู้ หรือ ใครก็ได้ รบกวนช่วยผมหน่อยนะครับ ปวดหัว ปวดตา มาก หาไม่เจอจนต้องมาโพสถาม
ยังไงก็รบกวนทุกท่านด้วยนะครับ ผมขอตัวไป นอน สักหน่อย ไม่ไหวแล้ว
ขอขอบคุณทุกท่าน ล่วงหน้าเลยนะครับ ^^
Tag : PHP, MySQL, JavaScript
|
ประวัติการแก้ไข 2013-06-12 23:11:20
|
|
|
|
|
Date :
2013-06-12 23:08:42 |
By :
hotreplay |
View :
1145 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอสอบถามเจ้าของกระทู้หน่อยนะครับ ทำไมไม่ใช้ jquery + ajax เขียนละครับ
เพราะเราสามารถดักจับ event on change ได้ แล้วส่งค่าให้ ajax ทำการ fetch ข้อมูลมาใส่ใน select box ที่เรากำหนด มันง่ายกว่าและเป็นการเขียนติดต่อกับ db ที่ถูกวิธีด้วยนะครับ
แต่ถ้าจะเขียนด้วย java script เพียวนี่ ไม่สามารถแนะนำได้ครับ
|
|
|
|
|
Date :
2013-06-13 00:13:56 |
By :
weerayudth |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณทุกท่านมากครับ ตอนนี้ผมทำได้แล้วครับ ไปอ่านจากที่
http://www.9lessons.info/2010/08/dynamic-dependent-select-box-using.html
แล้วลองเอามาปรับๆดู ก็ออกมาใช้ได้ ^^
ยังไงก็ขอบคุณทุกท่านนะครับ ทั้งที่เข้ามาอ่าน และที่มาช่วยคิด ช่วยตอบนะครับ ^^
|
|
|
|
|
Date :
2013-06-13 10:59:08 |
By :
hotreplay |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2013-06-13 11:26:37 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|