使用提交按钮 AJAX 实时检查可用性

2023-12-01

  • 测试1.php

    <html>
    <head>
    <script type="text/javascript" src="js/jquery-1.11.1.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
           $('#username').change(function(){
                var userName = $('#username').val();
    
                $.post("getUserName.php", {userName: userName}, function(data){
                    $("#userNameCheck").html(data);
                });
           }); 
    
           $('#submit').click(function(){
                //CODE HERE
    
           });
        });
    </script>
    </head>
    
    <body>
    <form action="" method="post" id="addform">
        Username: <input type="text" name="username" id="username" size="24" class="required" maxlength="22" />
        <div id="userNameCheck"></div>
        <input type="submit" id="submit" name="submit" value="ADD user" />
    </form>
    </body>
    </html>
    
  • 获取用户名.php

    <?php
    include("db.php");
    
    $userName = $_POST['userName'];
    $q = "select user_name from user where user_name = '".$userName."'";
    $r = mysqli_query($dbc, $q);
    
    $num =  mysqli_num_rows($r);
    
    if($num)
    {
          echo '<div style="color:red">Username taken. Please type another new one.    
         </div>';
    }
    else
    {
          echo '<div style="color:green">You can use it.</div>';
    }
    ?>
    
  • 数据库(用户表)

    用户 ID      用户名
    1                      阿里
    2                     阿布

  • 由上可知:
    => 输入“ali” 在文本框上 -> 以绿色显示“您可以使用它”消息。
    => 类型ahmad在文本框上 -> 以红色显示“用户名已被占用...”消息。

  • 我的要求是如果消息是“你可以使用它”,请转到test2.php;如果消息是“用户名已被占用...”,则不会在表单上提交。

  • 我的问题是,当我单击提交按钮时,如何控制“您可以使用它”或“用户名已被占用”消息?


不要使用按钮的单击处理程序,而是使用表单提交事件。

$(document).ready(function () {
    $('#username').change(function () {
        var userName = $('#username').val();

        $.post("getUserName.php", {
            userName: userName
        }, function (data) {
            $("#userNameCheck").html(data);
        });
    });

    $('#addform').submit(function () {
        //if the text is `You can use it` allow the form submit else block it
        return $("#userNameCheck").html().trim() == 'You can use it';
    });
});

还要确保您在中进行相同的验证test2.php因为,客户端验证可以被回避。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用提交按钮 AJAX 实时检查可用性 的相关文章

  • 使用 AJAX 来回发送信息

    使用 post 你可以向服务器发送信息 但是当你需要从服务器接收信息时怎么办呢 信息如何从可以由 php 变量保存的方式变为可以由 javascript 变量保存的方式 反之亦然 这与您的问题更相关 http docs jquery com
  • Symfony - 自定义验证器和依赖注入

    我正在尝试对自定义验证器使用依赖项注入 以便能够使用实体管理器 我遵循 Symfony 示例 依赖注入 http symfony com doc current cookbook validation custom constraint h
  • jQuery 在按键后获取输入值

    我有以下功能 document ready function dSuggest keypress function var dInput input text name dSuggest val console log dInput dDi
  • 使用 word_number 值对 javascript 数组进行排序

    如何对数组进行排序 var arr new Array word 12 word 59 word 17 这样我得到 word 12 word 17 word 59 Thanks 您需要编写一个排序方法 您可以编写任何您喜欢的方法 该方法在
  • 当子查询具有组列时,MySQL 8 不使用 INDEX

    我们刚刚从 mariadb 5 5 迁移到 MySQL 8 一些更新查询突然变得很慢 经过更多调查 我们发现当子查询有组列时 MySQL 8不使用索引 例如 下面是一个示例数据库 桌子users维护每种类型用户的当前余额 表 帐户 维护每天
  • JQuery 验证表单数组中的重复项

    我想显示重复或不唯一的值的错误 但我的表单接受输入数组 我已经在 jsfiddle 上检查了这些问题 name week 失败但是name week 工作正常 问题1 https stackoverflow com questions 24
  • 交响乐 2 |修改具有文件(图片)字段的对象时出现表单异常

    我正在使用 Symfony2 我有一个实体Post有标题和图片字段 我的问题 当我创建帖子时一切都很好 我有我的图片等 但是当我想修改它时 我遇到了 图片 字段的问题 它是一个上传的文件 Symfony 想要一个文件类型并且它有一个字符串
  • 通过电子邮件发送在 HTML5 画布上创建的图像

    我有一个画布 用户可以通过交互来更改设计 现在 用户完成更改后 可以提交他的设计及其电子邮件 ID 但为了提交设计 我使用以下方法将画布转换为图像http www nihilogic dk labs canvas2image http ww
  • Jquery 检测选项卡导航的相同类和文本

    有谁有检测相同文本的经验 和班级 这是我当前的代码 ul nav li click function ul slideMove li fadeOut slow var sharedata this text ul slideMove li
  • 如何使用 jQuery 获取数组键?

    下午好 我有一个数组 其中包含一些键和值 然后我需要获取数组键而不是其中的数据 我想用 jQuery 来做到这一点 例如 我知道 PHP 有一个名为 array keys 的函数 它将数组作为参数 并返回一个数组 其中包含每个索引中的每个键
  • jQuery Datepicker:setDate 不是一个函数

    我目前正在尝试使内联日期选择器对象与日期输入交互 并且已经管理了除一件事之外的所有内容 当我尝试使用输入的更改事件时 它会抛出错误 Uncaught TypeError start widget setDate is not a funct
  • 在 Slim Framework 3 中访问课堂上的应用程序

    当路由位于与 index php 不同的类中时 我无法理解如何访问 Slim 的实例 当使用 Slim Framework 2 时 我总是使用以下内容 但它在 Slim 3 中不起作用 this gt app Slim Slim getIn
  • 如何防止显示菱形问号符号,即使使用 mb_substr 和 utf-8

    我读过其他一些问题 尝试了答案 但最终没有结果 我得到的是例如这个 我无法删除那个奇怪的问号 我所做的就是获取 RSS feed 的内容 该内容也被编码为内容使用希腊语 有没有什么办法解决这一问题 div div
  • jQuery 显示/隐藏兄弟姐妹

    我有这段代码 旨在首先隐藏除第一个元素之外的所有相关元素 这个 做的不错啊接下来 它应该根据选择的项目显示 隐藏这些元素 但这部分不起作用 想法 jQuery accordion dl not first child hide hide a
  • 如何在没有脚本 (PHP) 或服务器配置 (Nginx) 的情况下检测移动设备(和/或移动 cookie)?

    我们很快就会推出网站的移动版本 我们的完整网站和移动网站仅在主题上有所不同 即网址相同 唯一的区别在于前端 当用户访问我们的网站时 我们需要能够执行以下操作 1 检查 cookie 移动 true 或 false 以确定是否已定义完整与移动
  • 如何在放置后拖动图像克隆?

    我的图像在旋转后可以拖动 但是当图像掉落时我无法第一次拖动图像 这是图像拖放的代码 dhtmlgoodies xpPane li rotatable 我可以拖动此图像克隆并将其放在 工作区域 上 我无法在放置后第一次拖动图像克隆 但克隆在旋
  • 如何使用 jQuery 和 .ajax 方法发送数组而不转义括号?

    我试图发送具有多个值的相同参数名称 但即使在阅读了 SO 上的帖子后也无法弄清楚如何做到这一点 我想要一个数组destination input var myObject search zip params search zip searc
  • 当 jQuery .remove() 用于删除脚本标签时,它是否会清除加载的 JavaScript?

    正如标题所示 如果我使用以下命令从 DOM 中删除脚本标签 scriptid remove javascript 本身是保留在内存中还是被清除了 或者 我完全误解了浏览器处理 javascript 的方式吗 这是很有可能的 对于那些对我提问
  • PHP - While/Else 错误? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我有以下
  • 在 url 中传递百分号 (%) 并使用 php 获取其准确值

    我正在尝试在 url 中传递百分号 例如 B6011000995504101 SB 但当我回声时 它又回来了 011000995504101 SB 我想要与在 URL 中传递的值完全相同的值 我尝试使用 urlencode 函数 但它给了我

随机推荐

  • 无法阻止被动事件侦听器内的默认行为

    我在用着Framework7 可排序列表它运行良好 只是当列表更改时它不会触发事件 所以我正在尝试一些内置事件 sortable handler on touchstart function e e preventDefault alert
  • FlashDevelop、Haxe 导入 CreateJS?

    我刚刚开始尝试 Haxe 制作一个网络应用程序 我想使用 CreateJS 它有一个 Haxe extern lib 东西 我使用 FlashDevelop 作为我的 IDE 所以我在FlashDevelop中创建了一个新的Haxe JS项
  • 从 jquery ui datepicker maxDate 选项获取日期对象

    通过使用以下 var maxDate selector datepicker option maxDate 输出可以是 1M 20Y 12 12 2013 或更多的任何内容 1M 和 20Y 示例是否可以与本机 JavaScript 一起使
  • Actionscript 3:self 事件侦听器是否会阻止对象被垃圾回收?

    我知道事件侦听器和对对象的引用将阻止垃圾收集器处理对象 我的问题是 放置在对象上的事件侦听器侦听同一对象是否会阻止该对象被垃圾收集 我问是因为这似乎发生在我身上 我正在破坏对某个对象的所有引用 但当其计时器关闭时我仍然看到痕迹 同时 这似乎
  • 如何使用 Angular CLI 安装特定版本的 Angular?

    我搜索了 google 和 Angular cli 文档 但找不到任何使用 Angular CLI 安装特定版本 Angular 的方法 有可能吗 为了回答您的问题 我们假设您对特定的感兴趣angular版本而不是特定的角度 cli版本 A
  • 如何解决MongoDB实例化失败的问题[关闭]

    Closed 这个问题需要调试细节 目前不接受答案 我关注了 MongoDbDocs设置我的第一个 MongoDb 当我使用命令启动 MongoDB 时 C Program Files MongoDB Server 3 4 bin mong
  • jpeg 的有效 base64 字符串

    这是有效的 jpeg base64 字符串吗 data image jpeg base64 9j 4AAQSkZJRgABAQAAAQABAAD 2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgk
  • 如何使 JFrame 内的 JPanel 填充整个窗口?

    在下面的示例中 如何让 JPanel 占用所有 JFrame 我将首选尺寸设置为 800x420 但实际上只填充了 792x391 import java awt Color import java awt Dimension import
  • 带单选按钮的 Android 颜色选择器

    我想创建一组单选按钮来选择颜色 像这样的东西 我怎样才能实现这样的目标 我在原始 RadioButton 上没有找到任何颜色属性 我必须创建自定义控件吗 如果是 有人可以提示我基本步骤 以便我可以尝试一些新的研究吗 我对 Android 很
  • 如果连续行之间的差异满足条件,则计算列的总和

    这是帖子中的一个持续问题如果第二行满足条件 则从每组中删除第一行 下面是一个示例数据集 df lt data frame id c 9 9 9 5 5 4 4 4 4 4 20 20 Date c 11 29 2018 11 29 2018
  • Oracle触发器更新同一个表

    我有一个触发器 我试图用它来更新它侦听的同一个表 但是 在提交创建或更新后 我收到以下错误 ORA 04091 table username ADDRESSES is mutating trigger function may not se
  • 无法保留 DStream 以供下一批使用

    JavaRDD
  • C# 和 Java 之间的 Base64 区别

    image是图像文件的字符串 我的 C 代码如下 Convert ToBase64String image 并用Java编写代码如下 org apache commons codec binary Base64 encodeBase64 i
  • 在 R 中的所有列名称中替换多个句点[重复]

    这个问题在这里已经有答案了 我有以下数据框 df data frame a dfs 56 c rep a 8 rep b 5 rep c 7 rep d 10 b fqh 28 rnorm 30 6 2 c 34 2 fgs rnorm 3
  • 在 Python 中解析 CS:GO 脚本文件

    我正在使用 CS GO 中的一些脚本文件 我必须从该文件中获取一些有用的信息并将这些数据导入到我的 python 应用程序中 以下是txt数据格式的示例 https steamcdn a akamaihd net apps 730 scri
  • 为什么枚举常量没有链接?

    我试图理解的联系enumeration constants并且在标准中找不到明确的答案N1570 6 2 2 p6 以下标识符没有链接 声明为的标识符 是对象或函数以外的任何东西 声明的标识符 作为函数参数 对象的块作用域标识符 声明时不带
  • 根据季度观察计算年化回报

    我正在尝试从两个回报系列计算年化季度回报 给定一个向量 r a 这相当容易 r a lt c 05 02 03 08 1 04 06 08 r a lt t t r a I just need to transpose the vector
  • 在 RecyclerView 视图上捕获 KeyEvent

    按照以下说明进行操作this博客文章 我能够跟踪垂直列表适配器上的选定项目 但我无法通过按某个键来单击或长单击任何项 目 我创建了这个方法 public static boolean isConfirmButton KeyEvent eve
  • 如何在装配中比较两个浮点数

    我 在装配方面完全是新手 我想比较两个变量 浮点数 并正确跳转到正确的函数 这是一场乒乓球比赛 它是用 FASM 编写的 The right pad P0x dd 0 9 P0y dd 0 05 P1x dd 0 95 P1y dd 0 2
  • 使用提交按钮 AJAX 实时检查可用性

    测试1 php