JavaScript-为什么我的Ajax jQuery不检查用户名?

这是我的j查询代码:控制台显示我为测试操作是否通过j查询添加的“更改”.我还通过手动传递参数来运行valdiateUname.PHP,它返回了正确的结果,但我的j查询未检查用户名.问题是什么?谁能帮我?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
    jQuery(function ($) {
        uname.change(function(){ 
            console.log('change');
            $.ajax({
                type: "POST", 
                data:{                  // data that will be sent
                    uname: uname.val() 
                },
                url:"validateUname.PHP",   
                //dataType:"text",        // what type of data we'll get back
                beforeSend: function(){
                    if(!$('span.unameCheck').html()){
                            $(this).after(' <span class="unameCheck" style="color:blue;"><b>Checking for the availability of username.....</span>');
                      } 
                    },  
                success:function(data){
                    if(data != 0 ) {
                        if(!$('span.unameError2').html()){
                            $(this).after(' <span class="unameError2" style="color:red;"><b>Username already exist.</span>');
                        }
                        return false;
                        //valid = true;
                    }
                    else {
                        $(this).toggleClass('unameError2', false);
                        $('span.unameError2').fadeOut().remove();
                        return true;
                    }
                }

            });
        });
      });
</script>

这是我的validateUname.PHP代码

<?PHP 
require_once("config.PHP");
$username= isset($_POST["uname"]) ? $_POST["uname"] : $_GET["uname"];
$sql= "SELECT temp_user_login  FROM temp_user_register WHERE temp_user_login = '$username' ";
echo $sql;
    $result = MysqL_query($sql); 
        echo $result;
        $msg = MysqL_num_rows($result);
        echo $msg;
?>

解决方法:

if(!$(‘span.unameError2’).html())将永远不会触发,因为它不会返回false,它会返回”,并且您的条件语句不会对此进行检查.

证明在jsFiddle

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...