Ajax问题?

发布于 2022-09-07 15:55:05 字数 1212 浏览 13 评论 0

js代码如下:

 function send() {
        var xml = new XMLHttpRequest();
        xml.onreadystatechange = function () {
            if(xml.readyState==4 & xml.status==200){
                if(xml.responseText=='true'){
                    document.getElementById("hide_info").innerHTML = '名称已被注册';
                }else {
                    document.getElementById('hide_info').innerHTML = '';
                }
            }
        }
        var name = document.getElementById("name").value;
        var url = "{:U('/Home/User/check',array('name' => name))}";
        xml.open('GET',url,true);
        xml.send(null);
    }

HTML代码:

<span class="reg_text">名称:<input type="text" name="name" id="name" onblur="send()"></span><span id="hide_info"></span><br/>

控制器代码:

public function check(){
        $name = I('get.name');
        $user = D('User');
        $result = $user->field('name')->where(array('name' => $name))->find();
        if($result>0){
            return true;
        }else{
            return false;
        }
    }

想测试用户名检测,但是无法实现,请问哪里有问题吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

橘寄 2022-09-14 15:55:05

1、按 F12 查看网络请求返回结果
2、TP 框架应该有返回 json 数据的办法
3、前后端接口通信返回 布尔值 不靠谱,通过返回 code 前端去判断请求成功还是失败

意中人 2022-09-14 15:55:05
if($result>0){
    echo 'true';
}else{
    echo 'false';
}
心头的小情儿 2022-09-14 15:55:05
var name = document.getElementById("name").value;
var url = "{:U('/Home/User/check',array('name' => name))}";
//第二行改成:
var url="{:U('Home/User/check'}"+"/name/"+name;
//结合F12看返回人数据和报错信息。
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文