js javascript的一个问题 我想知道怎么获得一个方法的返回值

具体是这样的我是想先在页面加载的时候从服务端获得当前时间然后拿到客户端进行操作设置一个setIntaval()这样让时间在客户端运行这样既降低了跟服务器打交道的频率而且也... 具体是这样的 我是想先在页面加载的时候 从服务端获得当前时间 然后拿到客户端进行操作 设置一个setIntaval() 这样让时间在客户端运行 这样既降低了跟服务器打交道的频率 而且也保证了时间的准确性 但是 问题来了 服务端返回的时间我拿到了 却没办法吐出来 有没有程序猿们知道该怎么办的呀?希望大家能给我一个完整的实现代码 或者能帮我把以下代码的返回值拿到也行 谢谢大家了

function initDate() {

$.post("/ashx/GetCurrentTime.ashx", function (data, status) { //用java或者php实现也行 我都能看懂

if (status == "success") {

return data;

}

});

}
展开
 我来答
yt_9119
2014-03-03 · TA获得超过812个赞
知道小有建树答主
回答量:395
采纳率:100%
帮助的人:312万
展开全部

把客户端操作时间作为ajax的回调函数,实现如下:

//客户端计时器
function timer(time){
    var t = setInterval(function(){
        time --;
        //todo
    }, 1000);
}
//从服务端读取时间
function initDate(url) {
   $.getJSON(url, function (data, status) {
        if (status == "success") {
            //假设data就是返回的时间
            timer(data); 
        }

   });
}
initDate('/ashx/GetCurrentTime.ashx');
rippox
2014-03-03 · 超过31用户采纳过TA的回答
知道答主
回答量:141
采纳率:0%
帮助的人:59.4万
展开全部
这样理解,你这个是因为有ajax请求,是异步的,不会阻塞主线程,ajax请求发出后,你的initDate就执行完了,没有返回值。考虑在ajax回调里面执行你的后续工作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniapp5xiikgnonm3g8
2014-03-03
知道答主
回答量:43
采纳率:0%
帮助的人:4.2万
展开全部
你能获取那个data吗?如果可以的话 你在方法外声明个全局变量,然后用全局变量保存值应该就行吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式