【发布时间】:2013-02-27 09:43:55
【问题描述】:
我正在构建一个完全由 JavaScript 组成的网站(为了好玩)。 我现在添加了选择一种语言的选项,该语言会将网站的某些部分更改为该语言(大多数硬编码的单词和句子)。
我现在正尝试通过将值传递给一个函数来执行此操作,然后该函数执行 ajax 调用并根据该值和语言集检索单词/句子。
但是因为 ajax 是异步的,所以它不会工作。我找到了一个很好的例子,只是那种做我想做的事,但有一个问题。
这里是小提琴代码:http://jsfiddle.net/6xhxT/5/
$('#test').text(realData);
当我使用这条线时(它在示例中被阻止)效果很好,但问题是我不知道要放入数据的 div 的 id。
我是这样用的
<div class="whatever">getWord(1)</div>
所以这个例子有效,但我现在需要我放入的 div 的 id,但我不想要那个。我希望它与调用函数的位置相同。
我知道我可以使用 async: false,但我不想使用它。
如果我想要的东西是不可能的,那么我应该使用什么,我可以使用数组或 sessionStorage,但考虑到它可能需要加载数千个单词/句子这一事实是否明智。
【问题讨论】:
-
异步与它有什么关系?
-
一切?因为当我调用该函数时,它不会返回值(因为它是异步的)但是如果我将 async 设置为 false 它将起作用,但我必须等待调用完成(我不希望那样)。所以我想进行异步调用并且仍然能够显示结果
标签: jquery ajax asynchronous