 |
javascript in ajax showAllmarker(map,News_ID[i],News_Type[i],Picture_1[i]]); } |
|
 |
|
|
 |
 |
|
ทำไมผม Alert(obj.responseText); มันก็มีข้อมูลอย่างที่ต้องการ
แต่ทำไมผม ใช้ test.innerHTML = obj.responseText แล้วมันไม่เกิดอะไรขึ้นอ่ะครับ
จริงๆCode ด้านบน ถ้าผมนำไปใช้ในหน้าhtmlเลย ก็ใช้งานได้ปกติ
แต่ผมอยากใช้ในรูปแบบAjax เพื่อประยุกต์แบบต่างๆน่ะครับ
|
 |
 |
 |
 |
Date :
2009-02-25 11:06:05 |
By :
nutkit |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มันทำได้ด้วยหรอครับ script ฝังใน script เนี้ย ผมว่า echo ออกมาแล้วมีเครื่องหมายอะไรคั่นไว้ก็ได้ แล้วมา split เอา ได้แน่นอน
|
 |
 |
 |
 |
Date :
2009-02-25 12:46:17 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
คุณเข้าใจอะไรผิดอ่ะ ป่าว ถ้า alert แล้วขึ้น ก็หมายความว่า มันทำงานได้ถูกต้องแล้วนะครับ
ดูโค้ดแล้วตาลาย(คุณน่าจะใช้ ' กะ " สลับกัน จะอ่านโค้ดง่ายกว่านะครับ)
แล้ว test นั้นคืออะไร ลองดูดีๆว่าผิดพลาดไปตรงไหนมั่ง
|
 |
 |
 |
 |
Date :
2009-02-25 13:24:10 |
By :
pjgunner |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
คือถ้าผมนำเอาโค้ดทั้งหมดนี้ไปวางไว้ที่หน้าHTML มันก็จะได้เลยน่ะครับ
แต่ว่าผมอยากใช้ในรูปแบบajax โดยที่ผมสร้าง <div id="test"> </div>
ไว้เพื่อให้รับค่าจาก obj.responseText; แต่ว่ามันไม่เกิดอะไรขึ้น
ผมเลยลองalert (obj.responseText) ดู ปรากฤว่าก็ได้ค่าตามที่ผมต้องการ
ช่วยทีครับ
|
 |
 |
 |
 |
Date :
2009-02-25 13:53:35 |
By :
nutkit |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอดูโค้ด ตอนที่ innerHTML หน่อยค่ะ ถ้าไม่เห็นโค้ดก็ไม่รู้ช่วยไงอ่ะ
|
 |
 |
 |
 |
Date :
2009-02-25 14:02:34 |
By :
Jewels |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
<? header("Content-Type: text/html; charset=UTF-8");
$objConnect = mysql_connect("xxx","xxx","xxx") or die("Error Connect to Database");
$objDB = mysql_select_db("xxx");
$strSQL = "SELECT * FROM news WHERE News_Type = 'Crime'";
$strSQL .=" order by News_ID DESC Limit 0,10";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$tmpid = array();
$tmppic = array();
$tmptype = array();
while($objResult = mysql_fetch_array($objQuery))
{
array_push($tmpid, $objResult["News_ID"]);
array_push($tmppic , $objResult["Picture_1"]);
array_push($tmptype , $objResult["News_Type"]);
}
echo implode(",", $tmpid) . ":::" . implode(",", $tmppic) . ":::" . implode(",", $tmptype);
?>
ส่วน script
<script>
var result = ajax.responseText;
var tmp = result.split(":::");
alert(tmp[0]);
alert(tmp[1]);
alert(tmp[2]);
</script>
ลองดูครับผมเขียนสดไม่ได้เทส แต่น่าจะรันได้นะ
|
 |
 |
 |
 |
Date :
2009-02-25 14:38:37 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
โค้ดคุณ PlaKriM ใช้งานได้ครับ
แต่ผมถามนิดนึง คือเมื่อแสดงผลโดย
<script>
var result = ajax.responseText;
var tmp = result.split(":::");
alert(tmp[0]);
alert(tmp[1]);
alert(tmp[2]);
</script>
มันได้จะได้
510,509,508,507,506,505,504,503,502,501
a,b,c,d,e,f,g,h,i,j
1,2,3,4,5,6,7,8,9,10
ผมต้องแก้โค้ดอย่างไรครับจึงจะได้
510,a,1
509,b,2
แบบนี้น่ะครับ
|
 |
 |
 |
 |
Date :
2009-02-25 15:02:18 |
By :
nutkit |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอาไปยัดใส่ array ใน javascript ไงคับ แล้วลูปเอา
|
 |
 |
 |
 |
Date :
2009-02-25 15:25:16 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เพิ่มเติม หรือจะ split ด้วย , อีกรอบก็ย่อมได้นะ มันก็จะได้ array สามตัวเหมือนกัน
|
 |
 |
 |
 |
Date :
2009-02-25 15:26:07 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
สรุปปัญหาตอนแรกอยู่ที่ตรงไหนครับ คุณ override onreadystatechange() ป่าวคับ
|
 |
 |
 |
 |
Date :
2009-02-25 20:49:20 |
By :
pjgunner |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แล้วตอนนี้ คอนเฟิร์มยัง คับ 
|
 |
 |
 |
 |
Date :
2009-02-25 20:53:33 |
By :
pjgunner |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบคุณเอี่ยว
ปัญหาไม่ได้อยู่ที่ readystatechange ครับ
ก็ไม่เข้าใจเหมือนกันว่าทำไม alert แล้วได้ค่า
แต่พอให้div = ค่าที่ได้กลับมาแล้วมันไม่ได้
ปล.ใครช่วยเขียนโค้ดที่คอมเม้น11,12 ให้ผมที
เขียนไม่ผ่าน - -"
|
 |
 |
 |
 |
Date :
2009-02-26 15:40:33 |
By :
nutkit |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|