Javascript jQuery脚本在控制台中运行,但不从文件中运行

Javascript jQuery脚本在控制台中运行,但不从文件中运行,javascript,jquery,html,Javascript,Jquery,Html,我对此代码有问题: $(document).ready(function() { sweetAlert("a");// This is just a test, and it runs successfully by the way!!! }); $("#login").keyup(check); function check() { $(this).val($(this).val().replace(/\s/g,"_")); } 浏览器正在加载文件,我从检查器中检查了它,

我对此代码有问题:

$(document).ready(function() {
    sweetAlert("a");// This is just a test, and it runs successfully by the way!!!
});

$("#login").keyup(check);

function check() {
    $(this).val($(this).val().replace(/\s/g,"_"));
}
浏览器正在加载文件,我从检查器中检查了它,并且它运行.ready脚本。但这不适用于,凯普。然后当我复制/粘贴行时

$("#login").keyup(check);
在控制台中,它成功地工作

以下是html表单(如果需要):

<input type="text" name="login" id="login"/>


谢谢您的帮助。

只需在
文档
就绪功能中移动
.keyup

$(document).ready(function() {
    sweetAlert("a");// This is just a test, and it runs successfully by the way!!!
    $("#login").keyup(check);
});

原因是,无论您在
$(document).ready(function(){
中编写什么代码,只有在加载所有DOM元素后才会执行。当您说它不工作时,当
$(“#login”).keyup(check);
执行时,
#login
将不会加载
$(document).ready(function()){
将在加载所有元素后为您执行。控制台中执行的任何操作都将在文档完全加载后执行。

只需在
文档
就绪功能中移动
.keyup

$(document).ready(function() {
    sweetAlert("a");// This is just a test, and it runs successfully by the way!!!
    $("#login").keyup(check);
});

原因是,无论您在
$(document).ready(function(){
中编写什么代码,只有在加载所有DOM元素后才会执行。当您说它不工作时,当
$(“#login”).keyup(check);
执行时,
#login
将不会加载
$(document).ready(function()){
将在加载所有元素后为您执行它。无论在控制台中执行什么,都会在文档完全加载后执行。

您是否尝试将keyup放入文档中准备就绪?正如Antonio所暗示的,它在控制台中成功工作,因为您的输入在运行时已加载到DOM中g控制台中的某个东西。您正在尝试在它加载到DOM之前将keyup处理程序附加到它。如果您将它包含在document ready中,那么它将在DOM准备好之前不会运行。不,我没有,但我将尝试它。P.s:在网站的其他页面中使用相同的编码模式,并且它工作得非常好,这就是困扰我的地方。@scrasedcola请不要建议人们使用
live
或任何小于
1.7.2
:)的jQuery
@PraveenKumar我没有建议使用低于1.7.2的版本。如果他们指出了版本,我就不会使用live。理想情况下,他们不会使用任何支持live的东西,但是现实生活中有一些用例,其中一个受到版本的限制,live将是唯一可用的。您是否尝试将密钥放在文档准备就绪?正如Antonio所暗示的,它在控制台中成功工作,因为在控制台中运行某些内容时,您的输入已经加载到DOM中。您正在尝试在将keyup处理程序加载到DOM之前将其附加到它。如果将其包含在文档准备就绪中,则在DOM准备就绪之前它不会运行。不,我没有t我要试试。P.S:在网站的其他页面上也使用了相同的编码模式,而且效果很好,这正是困扰我的地方。@ScrapedCola请不要建议人们使用
live
或任何小于
1.7.2
:)的jQuery
@PraveenKumar我没有建议使用低于1.7.2的版本。如果他们指出了版本,我不会使用live。理想情况下,是的,他们不会使用任何支持live的东西,但是在现实生活中有一些用例,其中一个受版本限制,live将是唯一可用的。非常感谢,它是有效的,但这让我想问,为什么在使用相同的编码模式(在“.ready”之外的处理程序)时,它会在其他页面中工作?@KhalilHamani如果在加载所有组件后在
正文的末尾加载脚本,它可能会工作。非常感谢,它会工作,但这让我想问为什么,在使用相同的编码模式时(在“.ready”之外的处理程序),它在其他页面中工作?@KhalilHamani如果在加载所有组件后在
正文的末尾加载脚本,它可能会工作。