日期:2014-05-18  浏览次数:20405 次

如何把后台的值传到ajax脚本里
如题,急!!!!!

------解决方案--------------------
很容易,ajax.net 只要就是传递到服务器和返回到js
function Start_RecvSay()
{
AjaxMethod.BackSayString(_backSendSm);
}

function _backSendSm(res)
{
alert(res);
}

这里的res就是从服务器端返回的,可以直接返回xml,强大吧


服务器端代码

[WebService(Namespace = "127.0.0.1 ")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class AjaxMethod : System.Web.Services.WebService {
[WebMethod(EnableSession=true)]
public string BackSayString()
{

return BackChatXml.SendSayMess();
}
}

ajax.net 1.0 是微软出的,比较好,ajaxpro有致命的BUG,你用时间长就知道了
ajax.net 1.0 方便,对服务器控件的无刷新根本不需要写代码。
上面的就是js脚本直接对webservice方法,跟ajaxpro的实现的方法很类似。
------解决方案--------------------
var xmlhttp;
var spidshow;
function createxmlhttprequest()
{
if(window.ActiveXObject)
xmlhttp = new ActiveXObject( "Microsoft.XMLHTTP ");
else if(window.XMLHttpRequest)
xmlhttp = new XMLHttpRequest();
}

//获得指定 “dids” 所对应的桌面信息,并构造spid来动态显示
function gettongzhideskinfo(dids,spid)
{
spidshow = spid;
var durl = "GetDeskInfo.aspx?DIDS= " + dids;
sendtodeskinfo(durl);
}

function sendtodeskinfo(deskurl)
{
createxmlhttprequest();
xmlhttp.onreadystatechange = handlestatechange;
xmlhttp.open( "GET ",deskurl,true);
xmlhttp.Send(null);
}

function handlestatechange()
{
if(xmlhttp.readystate==4)
{
if(xmlhttp.status==200)
deskshow();
}
}

function deskshow()
{
var spid = spidshow;
var responsespan = document.getElementById(spid);
var responseXml = xmlhttp.responseText;
responsespan.innerHTML = responseXml;
}