在Android浏览器中

在Android浏览器中

我在我的网站上实现了使用ajax的注册,它在桌面上可以正常运行,但是在Android浏览器中引起问题问题是我在android浏览器中单击“注册”按钮后,它将数据发布到数据库,但没有替换html消息。并警告本机代码错误。

function postdata(){
    var chkfrm = checkdata();
    if(chkfrm == 0){
        var url = '<?php echo base_url();?>index.php/Signup/signin';
        $.ajax({
           type: "POST",
           url: url,
           data: $("#formI").serialize(), // serializes the form's elements.
           beforeSend:function(){
               $("#signupdiv").html('<h1>Loadinng...........</h1>');
           },
           success:function(data)
           {
               $("#signupdiv").html(data);
           },
           error:function () {
                 alert(console.log);
           }
        });
        e.preventDefault();
    }
    else {
        $("#msgjava").html('<p>We need a little bit information from you.Please fill it.</p>');
        return false;
    }

最佳答案

您无法在当前位置执行e.preventDefault();,因为e没有传递到此函数中(因此它是未定义的)。这将导致错误并停止JS执行。

在您发布的内容中,您还缺少postdata()函数末尾的右括号。



您的警报显示“本机代码”,因为这是以下代码行:

alert(console.log)


会做。 console.log是本机函数,因此警告本机函数不会做任何有用的事情。您需要使该警报更加有用。要更详细地了解ajax函数返回了什么错误,请将您的错误处理程序更改为以下内容:

    error: function(jqXHR, textStatus, errorThrown) {
        alert("status = " + textStatus + ", errorThrown = " + errorThrown);
    }


然后,看看它怎么说。

07-24 20:01