我有一个包含标题,图片等的页面。我想使用Ajax将“page”div替换为另一个HTML,JavaScript等文件,并在加载后在该页面上执行JavaScript。我该怎么做并处理< ,“和文件中的其他标签并传递一些参数?
答案 0 :(得分:0)
您拥有其他“页面”内容吗?如果是这样,你可以在你的主“容器”页面上使用javascript方法,然后一旦你触发方法来提取新的“page”div的内容,就会激活你需要的相应的javascript方法,因为任何必要的DOM元素都会被此时已添加到页面中。
要按照您提到的方式执行此操作,您可以按照此处显示的步骤使用动态脚本模式:Executing <script> inside <div> retrieved by AJAX
基本上,你在外部托管你的javascript,然后一旦页面加载,将“src”标签添加到脚本元素,它将执行。
至于处理特殊字符,您可以按照jQuery的ajax调用的步骤将HTML从其他页面注入到当前页面中,例如:How to get the html of a div on another page with jQuery ajax?
$.ajax({
url:'http://www.example.com/',
type:'GET',
success: function(data){
$('#ajaxcontent').html($(data).find('body').html());
}
});
(而不是针对外部网页上的特定div,您将定位正文或父容器div)
答案 1 :(得分:0)
给出一个html页面
<html>
...
<body>
<div class="page">
some html content...
</div>
</body>
</html>
您可以通过jQuery
函数load()
$("div.page").load("an-http-resource.html");
答案 2 :(得分:0)
使用AJAX请求将HTML文件作为回复。 将“page”div innerHTML替换为响应。 如果HTML页面有一堆标题等,并且您只需要该HTML文件的某个部分,则可能需要使用getElementById或其他一些选择HTML文件部分的方法。
HTML实体将按照通常在浏览器中显示的方式显示,如果这是您处理&lt;和“和其他标签。
您可以通过编辑端点来发送参数:
index.html?date=today&car=yours