我有一个带标题导航的网络表单。
要生成此标题导航,我对 Java 类进行 AJAX 调用,并获取JSON字符串作为响应。
我解析字符串并在jQuery中创建HTML。以下是一个例子:
$(document).ready(function(){
$.ajax({
url: '/test/newHeaderJSON',
dataType: 'json',
type: 'GET',
success: function(data, textStatus, jqXHR) {
$('ul.main-menu').append('<a href="'+ obj.header.headerItems.productMenu.link +'">' + obj.header.headerItems.productMenu.name + '</a>');
}
});
});
以上示例显示了通过jQuery添加到页面的锚标记。
现在出现了问题。在页面源中看不到此锚点,因此无法抓取。
我想让这个组件可以抓取。
我已经阅读了关于_escape_fragment_的内容,但无论我在网上找到什么,我都无法理解它。
有人能告诉我这种方法是如何以更容易理解的方式使用的吗?
下面是我使用jsp struts2迭代器的替代方法。即使在这种方法中,我也没有得到源上的值。该代码适用于DOM但不适用于源代码。
<html>
<head>
<script type="text/javascript">
$.get('test/newHeader');
</script>
</head>
<body>
<s:iterator value="%{menuOptions.get('Home_Improvement').productgroup}" var="productGroupVar">
<a href="<test:sRelativeUrl url='/${productGroupVar.groupId}'/>">${productGroupVar.name}</a>
</s:iterator>
</body>
</html>
答案 0 :(得分:0)
此锚点未在页面源中看到,因此无法抓取。
Google能够抓取从Javascript生成的网页。因此,您的陈述不正确。因此,如果sitemap.xml
中有/那些页面的URL可用,则没有问题。