ส่งค่าด้วย Ajax แล้วค่าที่ไปบันทึกมันเป็น nullundefined คือดึงค่ามาจาก textbox ครับ
สคริป
Code
<script language="JavaScript">
<!--
var HttPRequest = false;
function doCallAjax(direct_id) {
HttPRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
HttPRequest = new XMLHttpRequest();
if (HttPRequest.overrideMimeType) {
HttPRequest.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}
var url = 'report_direct_sale_show_n_finish_update.asp';
var pmeters = 'Direct_n_finish_detail=' + document.getElementById('Direct_detail_')+direct_id.value + '&Direct_ID='+direct_id;
HttPRequest.open('POST',url,true);
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);
HttPRequest.onreadystatechange = function()
{
if(HttPRequest.readyState == 3) // Loading Request
{
document.getElementById("mySpan_" + direct_id).innerHTML = "Now is Loading...";
}
if(HttPRequest.readyState == 4) // Return Request
{
document.getElementById("mySpan_" + direct_id).innerHTML = HttPRequest.responseText;
}
}
/*
HttPRequest.onreadystatechange = call function .... // Call other function
*/
}
var hexChars = "0123456789ABCDEF";
function Dec2Hex (Dec) {
var a = Dec % 16;
var b = (Dec - a)/16;
hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
return hex;
}
function thai(s){
s2='';
for(var i=0;i<s.length;i++){
if(s.charCodeAt(i)>3423){
n=s.charCodeAt(i)-3424;
s2+='%'+Dec2Hex(n);
}else s2+=s.charAt(i);
}
return s2
}
//-->
</script>
ส่วนของ textbox
Code
<div id="Note_1_<%=rs("direct_id")%>">
<input type="button" name="EditButton_<%=rs("direct_id")%>" value="ปิดงานไม่สำเร็จ" onclick="Note_2_<%=rs("direct_id")%>.style.display=''; Note_1_<%=rs("direct_id")%>.style.display='none'" />
<span id="mySpan_<%=rs("direct_id")%>">
<%
If rs("direct_n_finish_stat")<>"" Then
Response.Write rs("direct_n_finish_detail")
End If
%>
</span>
</div>
<div id="Note_2_<%=rs("direct_id")%>" style="display:none">
<input type="button" name="UpdateButton_<%=rs("direct_id")%>" value="บันทึก" onclick="EditButton_<%=rs("direct_id")%>.style.display='none'; Note_1_<%=rs("direct_id")%>.style.display=''; Note_2_<%=rs("direct_id")%>.style.display='none'; JavaScript:doCallAjax('<%=rs("direct_id")%>');" />
<input type="button" name="CancelButton_<%=rs("direct_id")%>" value="ยกเลิก" onclick="Note_1_<%=rs("direct_id")%>.style.display=''; Note_2_<%=rs("direct_id")%>.style.display='none'" />
<input type="text" name="Direct_detail_<%=rs("direct_id")%>" style="width:98%" />
</div>
หน้าที่บันทึกค่า
Code
<%
Response.Charset = "windows-874"
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
Set Conn=Server.CreateObject ("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath ("Database1/direct_sale.mdb")
Direct_ID=Request.Form("Direct_ID")
Direct_n_finish_detail=Request.Form("Direct_n_finish_detail")
direct_n_finish_date=Year(Date)+543&"/"&right("00" & Month(Date),2)&"/"&right("00" & Day(Date),2)
Sql="SELECT direct_n_finish_stat,direct_n_finish_detail,direct_n_finish_date FROM direct_detail WHERE direct_id="&Direct_ID
Set rs=Server.CreateObject("ADODB.Recordset")
rs.Open Sql, Conn, 1,3
If rs.Recordcount<>0 Then
rs("direct_n_finish_stat")="1"
rs("direct_n_finish_detail")=Direct_n_finish_detail
rs("direct_n_finish_date")=direct_n_finish_date
rs.Update
direct_n_finish_stat=rs("direct_n_finish_stat")
rs.Close
End If
If direct_n_finish_stat<>"" Then
Response.Write Direct_n_finish_detail
End If
%>
Tag : ASP, JavaScript, Ajax