|
|
|
postDataReturnText ผมจะส่งไปหาอีกฟังชั่นได้ยังไงครับ |
|
|
|
|
|
|
|
Code (JavaScript)
function showmsg(msgid) {
var dataurl = '/process/comment-show.php';
postDataReturnText(dataurl,'topic=' + msgid,displayHint);
displayHint(msgid);//เพิ่ม
}
function displayHint(text){
document.getElementById("bbs_comment_"+window.msgid).innerHTML = text;
}
|
|
|
|
|
Date :
2011-04-21 01:46:04 |
By :
chineji |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองใส่เพิ่มว่า
Code (JavaScript)
function displayHint(text){
alert(window.msgid);
document.getElementById("bbs_comment_"+window.msgid).innerHTML = text;
}
ก็ไม่มีอะไรเกิดขึ้นอะครับ
|
|
|
|
|
Date :
2011-04-21 02:09:16 |
By :
sakang |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลืมดูให้ดีๆ โทษที
Code (JavaScript)
function showmsg(msgid) {
var dataurl = '/process/comment-show.php';
postDataReturnText(dataurl,'topic=' + msgid,displayHint);
displayHint('ทดสอบ',msgid);//เพิ่ม
}
function displayHint(text,objId){ //เพิ่ม การรับตัวแปรมาอีก 1 ตัวคือ objId
document.getElementById("bbs_comment_"+objId).innerHTML = text;
}
|
ประวัติการแก้ไข 2011-04-21 11:20:00
|
|
|
|
Date :
2011-04-21 11:19:38 |
By :
chineji |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เหมือนเดิมอะครับ ถ้าผมเอา displayHint ไปอยู่ก่อน postDataReturnText ข้อความก็จะมาว่า ทดสอบอะครับ
|
|
|
|
|
Date :
2011-04-21 16:20:27 |
By :
sakang |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (JavaScript)
function showmsg(msgid) {
var dataurl = '/process/comment-show.php';
postDataReturnText(dataurl,'topic=' + msgid,displayHint);
displayHint('ทดสอบ',msgid);//เพิ่ม
}
function displayHint(text,objId){ //เพิ่ม การรับตัวแปรมาอีก 1 ตัวคือ objId
document.getElementById("bbs_comment_"+objId).innerHTML = text;
}
ไม่น่าจะเหมือนเดิมนะส่งข้อมูลไปได้แน่นอน นอกเสียว่าคุณจะส่งค่าให้มันไม่ครบ โดยเฉพาะ
postDataReturnText(dataurl,'topic=' + msgid,displayHint); ไม่รู้ว่าคุณจะเอาตัวแปร displayHint มาจากไหน? หรือคิดว่าเป็นฟังก์ชั่น
ถ้าเป็นฟังก์ชั่นมันต้องมีการส่งค่าพารามืเตอร์ไปให้มัน ไม่งั้นมันจะทำงานได้อย่างไร? ในเมือคุณเขียนให้มันทำงานได้โดยการรับค่าตัวแปรไปใช้
ผมจะบอกแค่แนวทางก็แล้วกัน
Code (JavaScript)
<div id='display'></div>
function aa(text,objId){
document.getElementById(objId).innerHTML = "ข้อความนี้มาจากฟังก์ชั่น aa: "+text;
bb(text);
}
function bb(text2){
alert("ข้อความนี้มาจากฟังก์ชั่น bb: "+text2);
}
aa('สวัสดี','display');
ประมาณนี้
|
|
|
|
|
Date :
2011-04-21 21:43:30 |
By :
chineji |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อันนี้อะครับ เอามาจากหนังสือ
Code (JavaScript)
function postDataReturnText(url, data, callback){
var XMLHttpRequestObject = getHTTPObject();
if(XMLHttpRequestObject) {
XMLHttpRequestObject.open("POST", url);
XMLHttpRequestObject.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
XMLHttpRequestObject.onreadystatechange = function() {
if (XMLHttpRequestObject.readyState == 4 &&
XMLHttpRequestObject.status == 200) {
callback(XMLHttpRequestObject.responseText);
delete XMLHttpRequestObject;
XMLHttpRequestObject = null;
}
}
XMLHttpRequestObject.send(data);
}
}
|
|
|
|
|
Date :
2011-04-22 00:49:15 |
By :
sakang |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ่องั้นก็แก้เป็น
Code (JavaScript)
function showmsg(msgid) {
var dataurl = '/process/comment-show.php';
postDataReturnText(dataurl,'topic=' + msgid,'bbs_comment_'+msgid);
}
function callback(text,displayId){ //จะให้เป็น callback หรือ displayHint ก็ได้
document.getElementById(displayId).innerHTML = text;
}
function postDataReturnText(url, data, displayId){
var XMLHttpRequestObject = getHTTPObject();
if(XMLHttpRequestObject) {
XMLHttpRequestObject.open("POST", url);
XMLHttpRequestObject.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
XMLHttpRequestObject.onreadystatechange = function() {
if (XMLHttpRequestObject.readyState == 4 &&
XMLHttpRequestObject.status == 200) {
callback(XMLHttpRequestObject.responseText,displayId); ////จะให้เป็น callback หรือ displayHint ก็ได้
delete XMLHttpRequestObject;
XMLHttpRequestObject = null;
}
}
XMLHttpRequestObject.send(data);
}
}
#############################################
อีกตัวอย่างของผม for js
function load_content(method,url ,data,displayId){
var ajax =null;
if(window.ActiveXObject){
ajax=new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
ajax=new XMLHttpRequest();
}else{
alert("Your browser doesn't support Ajax");
return;
}
method=method.toLowerCase();
url +="?auID=" +Math.random();
if(method.toLowerCase()=="get"){
url +="&" + data;
data = null;
}
ajax.open(method,url);
if(method.toLowerCase=="post"){
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
ajax.onreadystatechange= function(){
if(ajax.readyState==4 && ajax.status==200){
var ctype = ajax.getResponseHeader("Content-Type");
ctype =ctype.toLowerCase();
ajaxCallback(ctype, displayId, ajax.responseText);
delete ajax;
ajax = null;
}else{
document.getElementById(displayId).innerHTML="<img src='icon/loadings.gif'>";
}
}
ajax.send(data);
}
function ajaxCallback(contenType, displayId, responseText){
if(contenType.match("text/javascript")) {
eval(responseText);
}else{
var el = document.getElementById(displayId);
el.innerHTML =responseText;
}
clearTimeout(ajaxTimeout);
}
function ajaxTimeout(){
if(ajax.readyState==1){
ajax.abort();
document.getElementById('err_lagin').innerHTML=""
}
}
//ตัวอย่างการใช้งานก็เขียนฟังก์ชั่นเพิ่มนิดนึง เช่นต้องการตรวจสอบ username ซ้ำหรือไม่ ผมก็ตั้งเป็นฟังก์ชั่น check_dispaly_nam
function check_dispaly_name(){
if(document.getElementById('txt_username').value.length>0){
ajax_data="username="+document.getElementById('txt_username').value;
load_data("get","check_user.php" ,ajax_data,'info_user');
}else{document.getElementById('info_user').innerHTML="กรุณากรอกชื่อก่อน";}
}
<inputy type='text' id='txt_username' name='txt_username' value='ไมเคิ้ล'> <a href='javascript:check_dispaly_name()'>ตรวจสอบ</a><span id='info_user'></span>
#####################################
อีกตัวอย่างของผม for Jquery
$.ajax({
type: "GET",url: "rcheck_user.php",data: "username="+$("#txt_username").val(),cache: false,timeout: 200000,async:true,dataType: "text/heml",
error: function(){alert('Error loading document');},
beforeSend: function(){$("#info_user").html("<img src='icon/loading.gif'>");},
success: function(response){$("#info_user").html(response);}
});
|
ประวัติการแก้ไข 2011-04-22 10:52:40
|
|
|
|
Date :
2011-04-22 10:51:32 |
By :
chineji |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|