jQuery的。如何执行从JSON加载的脚本?

时间:2011-08-05 07:58:57

标签: jquery ajax json getscript

我的文件是这样的:

{'html' : '<div id="bla">something</div>',
 'script' : ' $().ready(function() { /* some code */});' }

我需要用jQuery加载它并执行'script'变量。我知道$ .getScript,但我需要不是从URL运行脚本,而是从JSON文件的一部分运行。否则我需要向服务器而不是一个请求2(javascript代码不是静态的)。

有办法吗?

2 个答案:

答案 0 :(得分:3)

首先parse

var obj = $.parseJSON(jsonString);

然后为HTML准备div:

<div id="forHtml">
</div>

运行你的代码:

$('#forHtml').html(obj.html);
eval(obj.script);

答案 1 :(得分:1)

如果需要,您可以使用JavaScript的eval(脚本)或jQuery.globalEval(脚本):

http://www.w3schools.com/jsref/jsref_eval.asp

http://api.jquery.com/jQuery.globalEval/