假设我做一个简单的AJAX请求(在jQuery中)就像 geturl.php?url=http://google.com
并且geturl.php是这样的:
<?php
if($_GET['url'])
{
$url=$_GET['url'];
echo file_get_contents($url);
}
?>
Run Code Online (Sandbox Code Playgroud)
简单吧?
我如何从jQuery中返回的(非常长的)字符串中获取META描述?
这是我到目前为止所拥有的.是的,我知道,desc是错的.
$.get("geturl.php?url="+url,function(response)
{
// Loading <title></title>data
var title=(/<title>(.*?)<\/title>/m).exec(response)[1];
var desc = $("meta[name=description]").val();
$("#linkbox").html("<div><b>"+title+"</b><br/>"+url+"<br />Desc: " + desc)
});
Run Code Online (Sandbox Code Playgroud)
Fre*_*old 12
虽然primatology的答案确实有效,但关于jQuery的陈述是错误的.DOM是一个DOM.jQuery并不关心我们是在寻找一个元素<head>还是一个<body>元素.以下工作正常:
$('meta[name="description"]').attr('content');
Run Code Online (Sandbox Code Playgroud)
只需确保在加载元标记后调用该函数.
OP中的错误是使用val()函数,该函数用于获取value表单元素中属性的值.但由于元标记的值位于content属性中,因此它不起作用.