Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery元素数组';串_Javascript_Jquery_Html - Fatal编程技术网

Javascript jQuery元素数组';串

Javascript jQuery元素数组';串,javascript,jquery,html,Javascript,Jquery,Html,从给定的HTML中,我试图提取pText数组,这样我就得到了两个项(在本例中),我可以从中提取两个文本字符串“link test1”和“link test2”,并为它们中的每一个弹出一个警报。为什么下面的脚本不起作用 HTML: 测试1 测试2 Javascript: var pText = $('div').find('p'); for (i = 0; i < pText.length; i++) { alert(pText[i].text()); } var pText

从给定的HTML中,我试图提取
pText
数组,这样我就得到了两个
项(在本例中),我可以从中提取两个文本字符串
“link test1”
“link test2”
,并为它们中的每一个弹出一个警报。为什么下面的脚本不起作用

HTML:


测试1

测试2

Javascript:

var pText = $('div').find('p');

for (i = 0; i < pText.length; i++) {
    alert(pText[i].text());
}
var pText=$('div').find('p');
对于(i=0;i
因为您使用的是jQuery,如果您想使用
.text()
方法,您必须提取jQuery对象并使用
.eq(i)
而不是返回普通元素的
[i]

以下是正确的代码:

var pText = $('div').find('p');

for (i = 0; i < pText.length; i++) {
    alert(pText.eq(i).text());
}
var pText = $('div').find('p');

for (i = 0; i < pText.length; i++) {
    alert(pText.eq(i).text());
}
text()
是用于jQuery对象的函数

通过在
$(..)

更好的方法是使用
.each()

尝试使用alert(pText.eq(i.text());而不是警报(pText[i].text())

jQuery代码将是

var pText=$('div').find('p');
对于(i=0;i

$.map($('divp'),函数(x){return$(x.text()}).forEach(警报)
var pText = $('div').find('p');

pText.each(function(i, el) {
    alert($(el).text());
});
alert($(pText[i]).text());
$('div').find('p').each(function(){
    alert($(this).text());
});
var pText = $('div').find('p');

for (i = 0; i < pText.length; i++) {
    alert(pText.eq(i).text());
}
$('#x').children('p').each(function() {
    alert($(this).text()); // "this" is the current element in the loop
});