JavaScript - 点击后收到多个信号

标签 javascript jquery-mobile

我正在使用 jQueryMobile 创建一个网络应用程序。当我使用该应用程序并单击一个按钮时,它会多次运行脚本。

例如:

我有一个提交按钮:

<input type="submit" id="login-normal" value="Login" />

我有这个用于调试的 JavaScript,它会发生此错误:

$("input#login-normal").live('click',function() {
     console.log("Test");
});

在第一次点击时它会工作(例如它会转到另一个屏幕),但是当我返回那个屏幕并再次点击时,它会输出多个 console.logs

  • 编辑

这是我的 .js 文件中的确切代码。

$("div#login input#login-normal").live('click',function() { 
    var email = $("input#email").val();
    var password = $("input#password").val();

    user.checkUser(email, password, function(exists) {
        if (exists) {
            $.mobile.changePage("#home", { transition: "slidedown"});
        } else {
            console.log("Wrong email or password.");
        }
    });
    console.log("Login");
});

user.checkUser 是我的 User 类中的一个对象,它检查用户是否存在于数据库 (WebSQL) 中。在回调中返回 true 或 false。

最佳答案

你能用 on 而不是 live 试试吗

$("input#login-normal").off('click').on('click',function() {
    //...
});

关于JavaScript - 点击后收到多个信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13021169/

相关文章:

JQuery Mobile 将自定义主题应用于自动分隔符

jquery-mobile - jquerymobile : determine device orientation

css - Opera Mobile 不显示 jQuery Mobile 图标

javascript - Phonegap 与 jquery 移动 "hello world"不工作

javascript - 切换功能在 jQuery 1.9.1+ 中按预期工作

javascript - 使用适用于 Office 的 JavaScript API 获取 Excel 范围

javascript - 如何将 HTML5 桌面通知的关闭时间更改为不自动关闭?

javascript - 第一次拖放 FileReader() 事件但无法读取文件内容

javascript - EmberJs 输入 onkeypress 事件未发送到组件

jquery - 如何使用javascript显示jquery页面(在div内)?