Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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 Can';无法使用jquery查找元素_Javascript_Jquery - Fatal编程技术网

Javascript Can';无法使用jquery查找元素

Javascript Can';无法使用jquery查找元素,javascript,jquery,Javascript,Jquery,我在页面上有一个p标签列表,id如下: item_1 item_2 item_3 etc. 在jquery函数中,我为id构建字符串,然后我想更改其中的一些值,但jquery无法找到具有此id的元素,但它位于页面上: ... var itemId = '#item_' + itemId; if ($(itemId).length > 0) { alert("exist"

我在页面上有一个
p
标签列表,id如下:

item_1
item_2
item_3
etc.
在jquery函数中,我为id构建字符串,然后我想更改其中的一些值,但jquery无法找到具有此id的元素,但它位于页面上:

...
var itemId = '#item_' + itemId;
                            if ($(itemId).length > 0) {
                                alert("exist");
                            }
...
itemId变量中的Id很好。我做错什么了吗?也许我的方法错了? 加价


请注意
\uU9+

那是不对的

var itemId = '#item_' + itemId; // #item_+ << what +?
if ($(itemId).length > 0) {
   alert("exist");
}
请注意
\uU9+

这是不对的

var itemId='#item_u'+itemId;///#项目(0+0){
var itemId = '#item_' + itemId; // #item_+ << what +?
if ($(itemId).length > 0) {
   alert("exist");
}
警报(“存在”); }
var itemId='#item.'+itemId;//#项目(0+0){
警报(“存在”);
}
您是否尝试过:

var item = $('#item_'+itemId); if(item.length > 0).... 
?您是否尝试过:

var item = $('#item_'+itemId); if(item.length > 0).... 

由于过度使用
var
关键字,您似乎遇到了某种类型的变量范围冲突

看看这把小提琴——我在其中声明了一个外部
itemId
,然后在一个函数中复制了您的代码

在该函数内部,外部作用域中的原始
itemId
不再可用,它是
未定义的
,因此您最终得到的是
\item\u未定义的

相反,写下:

var sel = '#item_' + itemId;
if ($(sel).length > 0) {
    alert("exist");
}

您似乎遇到了某种类型的变量范围冲突,这是由于过度使用
var
关键字造成的

看看这把小提琴——我在其中声明了一个外部
itemId
,然后在一个函数中复制了您的代码

在该函数内部,外部作用域中的原始
itemId
不再可用,它是
未定义的
,因此您最终得到的是
\item\u未定义的

相反,写下:

var sel = '#item_' + itemId;
if ($(sel).length > 0) {
    alert("exist");
}

您是否尝试过直接通过JS控制台捕获元素?您的
itemId
是否包含您想要的内容?我已经在问题中添加了标记。是的,该值是正确的。如果我将此If($(“#item_+283”).length>0{alert(“exist”)}写入浏览器控制台,我会得到“undefined”,但我会从页面复制此I:(
$(“#item_+283”)
不正确,这应该是
$(“#item_283”)
您是否尝试通过JS控制台直接捕获元素?您的
itemId
是否包含您想要的内容?我已在问题中添加了标记。是的,值是正确的。如果我将此If($('.'item_u+283').length>0{alert(“exist”)}写入浏览器控制台,我会得到'undefined',但我会从页面复制此内容:(
$('item_+283'))
不正确,这应该是
$(“#item_283”)
所有元素都在页面上。只有带p标记的div,在ajax调用中我需要得到这个元素。@fguillen是的,我终于发现了发出警报的
**var**foo=x+foo
位所有元素都在页面上。只有带p标记的div,在ajax调用中我需要得到这个元素。@fguillen是的,我终于发现了de>**var**foo=x+foo位,按逻辑,这会起作用,但我怀疑不是因为你认为它会起作用。讽刺的是,这会起作用,但我怀疑不是因为你认为它会起作用。