get方法是't返回结果
get method isn't returning results
我试图简单地为.get方法重现jquery网站上的内容:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<ul>
<li id="foo">foo</li>
<li id="bar">bar</li>
</ul>
<script type="text/javascript">
alert($('li').get());
</script>
</body>
</html>
它应该返回
[<li id="foo">, <li id="bar">]
但我得到的只是[object HTMLLIElement],[object HTMLLIElement]
有人知道我在这里做错了什么吗?
一切正常:
.get()方法允许我们访问每个jQuery对象。
Get返回jQuery变量所持有的DOM元素。当你输出DomElements时,它们就变成了"HTMLLIElement"的形式。
但.get
就是这么做的!它将检索选择器匹配的HTMLDOM元素。如果您想要jQuery对象,您应该只使用$('li')
。
简单地,选择ul
元素并使用html
函数显示其内容:
alert($('ul').html());
html
文档:
描述:获取匹配元素集中第一个元素的HTML内容。
你不一定做错了什么。
您得到的是在包含2个<li>
DOM对象的数组上调用toString
(alert
将为您执行此操作)的实际结果:
[object HTMLLIElement],[object HTMLLIElement]
然而,API文档中提到的并不是数组的字符串表示,而是数组在内存中的当前状态的描述:
[<li id="foo">, <li id="bar">]
这只是一种简短的表达方式:
结果是一个具有2个DOM对象的数组,它们分别表示
<li id="foo">
和<li id="bar">
元素。
现在,如果您真的想获得警报中的标记,您必须获得元素的外部HTML。然后尝试:
alert($('li').map(function () { return $(this).outerHTML(); }).get());
示例:http://jsfiddle.net/cmpwM/
相关文章:
- JSONP请求返回结果,但也触发error_callback
- async问题,JS Promise无法返回结果,但可以使用console.log
- Meteor js-控制台显示'未定义'即使返回结果
- 正在等待HTTP调用从函数返回结果
- 使用函数for循环遍历对象以更改值,然后返回结果
- 迭代 JSON 文件并且未在 Javascript 中正确返回结果
- Javascript 函数不返回结果
- 用逗号分隔返回结果中的对象
- 需要呈现MongoDB查询返回结果的特定索引/位置
- HTML5 文件阅读器如何返回结果
- javascript循环遍历列表项,并在数组中返回结果
- 使用jquery UI next按钮提交输入字段值,php将返回结果
- 在angularjs工厂中,如何在函数解析后返回结果
- 我在jQuery中的Rock Paper Scissors程序只在平局时返回结果
- 如何使用ajax调用php并返回结果
- 添加第二维度的Javascript未返回结果
- Node.js没有返回结果
- jquery裁剪图像selction未返回结果
- 如何在phonegap javascript函数中返回结果
- 如果文本筛选器在ng重复中未返回结果,则显示消息