jquery 问题 无法使用

jquery-1.11.0.min.js

function login(){
    var username = $("#username").val();
    var password = $("#password").val();
    var ret_url = encodeURI($("#ret_url").val());
    var post_path = $(".login-form").attr('action');

    if(username =="")
    {
        $("#username").css('color','#e7693f');
        return false;
    }
    else if(password == "")
    {
        $("#password").css('color','#e7693f');
        return false;
    }
    else{

        $.ajax({
            type:'post',
            url:post_path,
            data:{username:username,password:password,gopath:ret_url},
            dataType:'json',
            success: function(data){

                if(data.status == 0){
                    $("#errormsg").text(data.msg);
                }
                else if(data.status == 1)
                {
                    $("#errormsg").text(data.msg);
                    location.href = data['data'].gopath;
                }

            },
            beforeSend: function(XMLHttpRequest, textStatus){
                $("#login-btn").find("span").text("\u6b63\u5728\u767b\u9646\u002e\u002e\u002e");
                $("#errormsg").text("");
            },
            complete: function(){
                $("#login-btn").find("span").text("\u7acb\u5373\u767b\u9646");

            }
        })
    }
};
// #login-btn登陆按钮

$("#login-btn").on('touchstart click',function(){
    login();
});

电脑端没有问题! 到手机端就没用了 !

阅读 4.7k
6 个回答

desktop端没问题,那说明click事件绑定成功,并能成功执行你的login(),这里只触发了click事件;而移动终端多了touchstart事件,也就是说一个动作响应两个事件,几乎同时执行了两次login(),后面自个儿具体调试一下。(注: 看来题主已经引入触摸事件模块。)

让移动终端只触发一个事件,使用creatTouch属性判断是否支持触摸事件。做法如下:

   var tap_click = ("createTouch" in document) ? "touchstart" : "click";
   $("#login-btn").on(tap_click,function(e){
      // code...
   });

题外话:而且为何不使用tap事件。移动终端一般使用轻量级的zepto.js。

额,,看起来没什么错误啊,让高手来回答

手机端不兼容吧

手机端试试只写

    var username = $("#username").val();
    alert(username);

是否有值

最好的是自己一步步调试下吧?
到底是哪里的问题?
是取值取不到还是异步路径不对,或者异步数据取不到,又或者是输出有问题?

touchstart click 中间应该使用逗号而不是空格吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题