TD点击时我用JS干了一件事,但是后台程序也同事干了一件事,可惜的是程序先执行JS在执行后台的程序

我想让我的JS后执行,注意不改动后来程序,只改动我的JS,我试着写了等待2秒,原以为这样就会先执行后台程序,结果人家也在那等,硬是等我的JS执行完了才执行后台程序。试问大... 我想让我的JS后执行,注意不改动后来程序,只改动我的JS,我试着写了等待2秒,原以为这样就会先执行后台程序,结果人家也在那等,硬是等我的JS执行完了才执行后台程序。试问大神们还有什么办法没。 展开
 我来答
molaifeng
2013-01-06 · TA获得超过5273个赞
知道大有可为答主
回答量:1629
采纳率:50%
帮助的人:1778万
展开全部
肯定是那样的撒,js是单线程的语言,也就是执行完了这个才能执行下一步,若想实现楼主的要求,可以再开了线程,也就是流行甚广的ajax,把楼主想要的执行的js代码放到ajax回调函数里,这也就可以解决。
更多追问追答
追问
开个线程? 两个不同地方的不同语言,修改了同一个地方的值,只不过我的JS先执行了,我想让JS后执行。像您说的开个线程,怎么控制JS和后台程序啊  呵呵。 不懂!
追答
举个例子做参考吧

function tel() {
var tel = false;
try {
tel = new XMLHttpRequest();
} catch(e) {
//针对ie浏览器
try {
tel = new ActiveXObject('Msxml2.XMLHTTP');//ie8
} catch(e) {
try {
tel = new ActiveXObject('Microsoft.XMLHTTP');
} catch(e) {
alert('你的浏览器不支持ajax');
}
}
}
return tel;
}
function ajax() {
var nokia = tel();
nokia.open('GET','response.html?' + Math.random(),true);
nokia.onreadystatechange = function () {
if(this.readyState==4&&this.status==200) {
//这里可以把代码放进去
}
}
nokia.send(null);
}
loveandkissyou
2013-01-06 · TA获得超过2297个赞
知道大有可为答主
回答量:2332
采纳率:0%
帮助的人:2522万
展开全部
很简单
你写个ajax,调用他的后台方法,等success回来之后,再执行你的js,就行了
追问
你说的这个在我这边有点不太可能,因为我用的wicket框架,像你说的这种方法 我还无从下手啊。
追答
不能吧,为什么写不出个ajax来?ajax跟框架有关系吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fang86901728
2013-01-06 · TA获得超过104个赞
知道答主
回答量:68
采纳率:0%
帮助的人:26.5万
展开全部
试一试用这种方法吧!
window.onload=function(){ 要运行的JS函数名 }
追问
是鼠标点击事件,不是页面加载。我没刷新页面,只是点击了一下。我的JS所做的事和后台程序所做的事控制了同一个地方,JS先执行了,后台程序后执行了,我的程序没用到线程。我想让我的JS后执行而已。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hbxflzh
2013-01-07 · TA获得超过367个赞
知道小有建树答主
回答量:541
采纳率:100%
帮助的人:359万
展开全部
看看写在window.onload 里面咋样,我记的执行顺序是先执行后台代码,再执行页面加载事件
追问
是鼠标点击事件,不是页面加载。我没刷新页面,只是点击了一下。我的JS所做的事和后台程序所做的事控制了同一个地方,JS先执行了,后台程序后执行了,我的程序没用到线程。我想让我的JS后执行而已。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
耐特青年
2013-01-07 · 超过13用户采纳过TA的回答
知道答主
回答量:122
采纳率:0%
帮助的人:56.1万
展开全部
ajax正解。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式