为什么.on函数不能用于我的JQuery

时间:2018-02-05 18:47:07

标签: javascript

我试图在一个网站上编写一个jQuery函数,当点击一个按钮时会发出一系列问题,但是当点击该按钮时,提示不起作用。

<script>

$('submit').on('click', function() {
    var username = prompt("Please type your username");
    var password = prompt("Please type your password");
    var welcome = alert("welcome " + username);
});

</script>

5 个答案:

答案 0 :(得分:1)

'submit'选择器与<submit>元素匹配,我认为您正在寻找input[type="submit"]

&#13;
&#13;
$('input[type="submit"]').on('click', function(){
    var username = prompt("Please type your username");
    var password = prompt("Please type your password");
    var welcome = alert("welcome " + username);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
<body>
  <form>
     <input type="submit"/>
  </form>
</body>
</html>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您需要确保脚本在DOM Ready处理程序中触发:

$(function(){

Your code

});

答案 2 :(得分:0)

您尚未在此处提供完整的问题,但我注意到'submit'不是标准HTML元素的名称。因此,我将假设它是ID或类名。

如果是ID,则应使用'#submit'。如果它是类名,则应使用'.submit'

答案 3 :(得分:0)

您的jQuery选择器可能不正确。 $('submit')将在您的HTML中查找<submit>元素,这可能不是您想要的。

我的猜测是,您正在寻找<input type="submit">的点击,在这种情况下,您应该使用$('input[type="submit"])而不是$('submit')

答案 4 :(得分:0)

确保将脚本放在正文的末尾 如果你必须把它放在你的页面顶部,请使用就绪功能

def nameFix(f):
    start, end = os.path.splitext(f)

    if f.endswith('mkv') and f.startswith('[H'):
        fileName = fileReg.findall(f)
    elif f.endswith('mkv') and f.startswith('['):
        fileName=altReg.findall(f)


    folder = folderReg.findall(fileName[0][1])
    fileFix = fileName[0][1] + end
    fixFolderName = folder[0]
    return (fileFix, fixFolderName)

或者你上面的回答是和就绪功能一样。