[英]How to get HTML source of a page after javascript is loaded using Swift
[英]How to get a JavaScript file after you have loaded the page?
我想将AJAX表单加载到我的页面上,并附加它自己的validation.js
。 我怎样才能做到这一点?
我试图用自己的$.ajax
请求加载每个人,然后成功在页面上输出HTML,但是validation.js在表单上不起作用。
我可以在现有页面中加载一个JavaScript文件,然后加载一个HTML文件(带有ajax
),然后在该页面上获取HTML输出以响应此JavaScript函数吗?
页面加载后,使用以下javascript在异步模式下添加javascript文件。
(function() {
var d=document,
h=d.getElementsByTagName('head')[0],
s=d.createElement('script');
s.type='text/javascript';
s.async=true;
s.src='/js/myfile.js';
h.appendChild(s);
}());
如果您有许多要通过这种方式加载的文件,则可以将其转换为函数调用。
function asyncLoader(scriptName)
{
var d=document,
h=d.getElementsByTagName('head')[0],
s=d.createElement('script');
s.type='text/javascript';
s.async=true;
s.src = scriptName;
h.appendChild(s);
}
此方法不能保证/通知js文件何时加载。 为此,您可以在正在加载的文件中放置一些事件调用。
如果您要从ajax加载一些html并将其添加到当前的html中(作为innerHtml),则可以将<script>
标记放入该html中,其行为与上述代码相同。
请参阅此问题及其答案以获取更多详细信息。
编辑 :
以下是使用$.getScript
的JQuery方法
$.getScript("path/my_script.js", function(){
console.log( "Load was performed." );
}); //JQuery can also be used instead of $
使用$.ajax
做同样的事情
$.ajax({
url: "path/my_script.js",
dataType: "script",
success: function(){
console.log( "Load was performed." );
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.