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是的,我终于发现了