提取脚本

时间:2011-06-28 20:15:55

标签: ajax jquery find

我有一个DIV我想要ajax-load。包含需要运行的JavaScript。我跑过this SO article,讨论在加载主内容后加载脚本。但是我无法让它工作,主要是因为我无法在我的内容中找到脚本!

请考虑以下事项:

$('<p />').html('<div>x</div>').find('div').html()
"x"

(由于某种原因,以下行不起作用:

$('<p><div>x</div></p>').find('div').html()
null

然而,脚本有一些特别之处:

$('<p />').html('<script>x=1</script>').find('script').html()
null

我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

脚本标记从jQuery .html()

中删除

答案 1 :(得分:0)

Neal是对的。我建议用普通JS添加脚本标记:

var scriptTag = document.createElement('script');
script.text = 'alert("testing");';
// if you're linking to a remote script, use script.src instead

document.getElementById('parentID').appendChild(script);
// to append to the body, use document.body.appendChild