 |
ต้องการแสดงค่าตัวแปร id_med ตาม dropdown list ที่เลือกนอก loop dropdown list เมื่อ echo "แสดงผล: ",$objResuut["id_med"];?> ไม่มีค่ามีวิธีไหนบ้างที่ให้ตัวแปรนี้ใช้งานนอก loop ได้ |
|
 |
|
|
 |
 |
|
ใช้ jascript ช่วยครับ
<select name="lmName1" onchange="alert( this.value)">
จะเอาตัวแปร this.value ไปลงที่ไหน ก็เลือกเอานะครับ
|
 |
 |
 |
 |
Date :
2015-11-08 12:48:51 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
alert() มันเป็น function ของ javascript อยู่แล้วครับ
ที่ทำเกือบถูกแล้วครับ
1 เปลี่ยนชื่อฟังก์ชั่น
2 ส่ง parameter ไปด้วย
Code (JavaScript)
function slc_onchange( val){
document.xxx.yyy.value=val;
}
Code (PHP)
<select onchange="slc_onchange(this.value)">
<option ......
|
 |
 |
 |
 |
Date :
2015-11-08 15:10:39 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองสร้าง script 2 แบบ เปลี่ยนชื่อฟังก์ชั่นและส่ง parameter ไม่เห็นผลลัพธ์เลยครับ
Code (JavaScript)
<select name="lmName1" onchange="slc_onchange(this.value)" >
<p id="test"></p>
<script>
function slc_onchange(val)
{
document.form1.textfield.value =val;
}
</script>
<script>
function slc_onchange()
{
var x = document.getElementById("lmName1").value;
document.getElementById("test").innerHTML = "You selected: " + x;
document.form1.textfield.value =val;
}
</script>
|
ประวัติการแก้ไข 2015-11-08 16:14:20
 |
 |
 |
 |
Date :
2015-11-08 16:11:59 |
By :
mininova |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองเอาโค๊ดข้างล่างไปเล่นดูครับ เพื่อจะเข้าใจมากขึ้น ยังไม่ต้องแก้ไขอะไรนะครับ ลองเล่นดูก่อน
Code (PHP)
<!doctype html>
<html>
<head>
<meta charset="utf8">
<title>ทดสอบ select onchange</title>
<script>
function slc_onchange(val){
document.getElementById('showdiv').innerHTML=val;
var inp=document.getElementsByTagName('input'); inp.item(0).value=val;
var clsinp=document.getElementsByClassName('showclass');
var ln=clsinp.length;
for( var i=0; i<ln; i++){ clsinp[i].value=val;}
}
</script>
</head>
<body>
<select onchange="slc_onchange(this.value)">
<option value="" disabled selected >--กรุณาเลือก--</option>
<option value="12345">12345</option>
<option value="abcdef">abcdef</option>
</select>
<div id='showdiv'></div>
<input type="text" id='showinput'>
<input type="text" class='showclass'>
<input type="text" class='showclass'>
</body>
</html>
|
 |
 |
 |
 |
Date :
2015-11-08 16:42:47 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เช็คโค๊ดที่เขียนครับ tag ไม่สมบูรณ์ double quote เปิดแล้วไม่ปิด
|
 |
 |
 |
 |
Date :
2015-11-08 16:53:48 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

ช่วยเอาปุ่มสีแดง ครอบ โค๊ด ด้วยครับ ช่วยให้ copy ได้ง่าย
|
 |
 |
 |
 |
Date :
2015-11-10 17:23:25 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ประกาศ id ใหม่ครับ ที่ทำผิดนะครับ
Code (PHP)
<td id='showdiv1'></td>
<td id='showdiv2'></td>
Code (PHP)
var id1 = document.getElementById('showdiv1');
var id2 = document.getElementById('showdiv2');
|
ประวัติการแก้ไข 2015-11-10 17:28:00
 |
 |
 |
 |
Date :
2015-11-10 17:27:21 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมลองใส่ var id1 = document.getElementById('showdiv1');
var id2 = document.getElementById('showdiv2'); และลองเปลี่ยน
var id = document.getElementById('showdiv1');
var id = document.getElementById('showdiv2');
<td><div id1='showdiv1'></div></td>
<td><div id2='showdiv2'></div></td>
ไม่แสดงผลลัพธ์อะไรเลย
Code (PHP)
<!doctype html>
<html>
<head>
<meta charset="utf8">
<title>select onchange</title>
<script>
function slc_onchange(val){
var id1 = document.getElementById('showdiv1');
var id2 = document.getElementById('showdiv2');
var inp=document.getElementsByTagName('input'); inp.item(0).value=val;
var clsinp=document.getElementsByClassName('showclass');
var ln=clsinp.length;
for( var i=0; i<ln; i++){ clsinp[i].value=val;}
}
</script>
</head>
<?
mysql_connect("localhost","root","123456") or die(mysql_error());
mysql_select_db("mydatabase");
?>
<body>
<select name="lmName1" onchange="slc_onchange(this.value)">
<option value=""><-- Please Select Item --></option>
<?
$strSQL = "SELECT * FROM drug ORDER BY id ASC";
$objQuery = mysql_query($strSQL);
while($objResuut = mysql_fetch_array($objQuery))
{
if($strDefault == $objResuut["id"])
{
$sel = "selected";
}
else
{
$sel = "";
}
?>
<option value="<?=$objResuut["value"].$objResuut["value1"]; ?>" <?=$sel;?>>
<?=$objResuut["id"]." - ".$objResuut["name_med"]." - ".$objResuut["value"]." - ".$objResuut["value1"];?>
</option>
<?
}
?>
</select>
<table width="200" border="1">
<tr>
<td><div id='showdiv1'></div></td>
<td><div id='showdiv2'></div></td>
</tr>
</table>
<!--<input type="text" id='showinput'>
<input type="text" class='showclass'>
<input type="text" class='showclass'>-->
</body>
</html>
|
ประวัติการแก้ไข 2015-11-11 16:04:31
 |
 |
 |
 |
Date :
2015-11-11 15:26:12 |
By :
mininova |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมแค่แสดงวิธีการอ้างอิงครับ
ส่วนวิธีการเซทค่าให้กับ div ให้ใช้ div.innerHTML=val ครับ
id1.innerHTML=val;
|
 |
 |
 |
 |
Date :
2015-11-11 15:57:56 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
function slc_onchange(val)
{
document.getElementById('showdiv1').innerHTML=val;
document.getElementById('showdiv2').innerHTML=val;
}
<div showdiv1.innerHTML=val;></div>
<div showdiv2.innerHTML=val;></div>
ผลที่ได้
50100
50100
ค่าที่ได้ 2 ค่าติดกันเหมือนเดิมไม่ได้เป็น
50
100
|
 |
 |
 |
 |
Date :
2015-11-11 16:21:42 |
By :
mininova |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ประยุกติ์เอาหน่อยครับ อ่านโค๊ดจากของเดืม
มาประยุกต์ วิธีการอ้างอิง div เปลี่ยนวิธีกำหนดค่า จาก textbox มาเป็น div
ของเดืมใช้ loop อ่านค่าใช่ไหมครับ ก็ต้องใช้ loop อ่านค่ามาเหมือนกัน
แล้วคิดว่า element ที่ 1 ควรเอาไปใส่ที่ไหนอย่างไร
อย่างลอกโค๊ดโดยไม่คิดครับ ผมแค่ให้ตัวอย่างไม่ได้ให้ทั้งหมดครับ
|
 |
 |
 |
 |
Date :
2015-11-11 16:28:15 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
อ้อ ส่งค่ามา 2ค่า นี่เอง ก็ต้องกำหนดให้มันแยกค่าได้ด้วยครับ
Code (PHP)
<option value="<?=addslashes(json_encode(array( $objResuut["value"] , $objResuut["value1"])))?>"
ส่งค่ามาเป็น json
แล้วมาแยกค่า ด้วย JSONparse(val);
Code (JavaScript)
var valAr = JSONparse(val);
id1.innerHTML=valAr[0];
id2.innerHTML=valAr[1];
อ่านแล้วทำความเข้าใจ และประยุกติ์ใช้นะครับ
|
ประวัติการแก้ไข 2015-11-11 16:38:34 2015-11-11 16:39:03
 |
 |
 |
 |
Date :
2015-11-11 16:35:43 |
By :
NewbiePHP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|