Google Chrome开发者工具中控制台中的Jquery问题

15 浏览
0 Comments

Google Chrome开发者工具中控制台中的Jquery问题

当我尝试在谷歌浏览器的开发者工具中执行以下JQuery代码时:

$("#u_16_0").val("AJ College, Sivakasi")

我遇到了以下错误:

Uncaught Error: <[EX[["尝试使用id为\"%s\"的元素,但该元素在页面中不存在。","#u_16_0"]]]>(…)h @ LGuPoDEwQGD.js:36i @

LGuPoDEwQGD.js:36(anonymous function) @ VM580:1

请问有人能帮我解决这个问题吗?我已经验证了该元素在页面中存在。我的意思是,如果我只是在控制台中输入$("#u_16_0"),该元素会被打印出来。

请查看下面链接中包含我谷歌浏览器版本信息的截图。

[Google Chrome Version

更新 - 1

我使用以下纯JavaScript代码成功完成了这个任务

document.getElementById("u_16_0").value="University of Cambridge"

更新 - 2

Amin基于jQuery的答案也起作用。因此,我接受了它作为答案并授予了悬赏。

0
0 Comments

Google Chrome开发者工具在控制台中使用jQuery时出现了问题。这是因为jQuery的$符号与其他库(如一些Facebook的js库)发生了冲突。解决方法是使用jQuery而不是$符号进行操作。例如:jQuery("#u_16_0").val("AJ College, Sivakasi")。若出现错误信息"Uncaught ReferenceError: jQuery is not defined",请确保jQuery库已正确引入。例如:。如果无法访问网页源代码,则可以将jQuery库文件的内容复制并粘贴到控制台中,然后按回车键执行。具体的jQuery库文件可以从code.jquery.com/jquery-1.12.4.min.js获取。

0
0 Comments

问题的原因是假设$始终是jQuery,但实际情况并非如此。可以通过console.log($)来查看$的返回值,以确定是否为jQuery。

jQuery通常返回以下结果之一:

function (selector,context){return new jQuery.fn.init(selector,context)}

或者

function (a,b){return new n.fn.init(a,b)}

现在,任何人都可以将$定义为任何内容。在Facebook上,它似乎是document.getElementById()的别名,并具有一些检查功能:

function i(j){return h(j);}

运行$("contentCol")将返回一个DOM元素。

而如果$未定义,在Chrome开发者工具中,它是document.querySelector的别名:

$(selector, [startNode]) { [Command Line API] }

因此,最后不要期望$是jQuery。

解决方法:不要假设$始终是jQuery。可以使用jQueryjQuery.noConflict()来确保使用正确的jQuery版本。

0
0 Comments

问题:Google Chrome开发者工具中的控制台与Jquery不兼容

原因:Chrome控制台似乎无法访问内容脚本的执行环境。实际上,我们需要查看正确的位置,而不是下面的

解决方法:您需要选择chrome-extension://<your extension id>,而不是下面的。在您的Chrome版本中,可以点击下方的"top"。

图片:

enter image description here

动画:

Animation of how-to get access to the execution environment of the Chromne extension

在Chrome开发者工具的控制台选项卡中,可以通过底部的两个下拉框来更改开发者工具控制台的执行环境。

左侧下拉框用于更改帧上下文(顶层框架、iframe等),右侧下拉框用于更改脚本上下文(页面、内容脚本等)。

参考链接:[Why will jQuery not load in Facebook?](https://stackoverflow.com/questions/15194699)

我在我的控制台中没有看到页面上下文选项,我的版本是否不支持?

如果您进入控制台,您可以看到"top",您需要点击它。

您可以在控制台中选择正确的chrome-extension://<your extension id>并执行$("u_o_0")。如果您不确定要选择哪一个,可以逐个尝试并在控制台中执行它。

此外,请注意,您现在似乎正在尝试$("u_16_0")。相反,您可以尝试使用#,如$("#u_16_0")

@ Aruna 纯JavaScript代码完美运行。我已经更新了我的帖子。让答案自动选择并相应地奖励。

0