簡體   English   中英

jQuery插件驗證遠程方法的問題

[英]Problem with remote method of jQuery plugin Validation

我要測試插件驗證,尤其是“遠程”方法。 我使用以下代碼制作了由 HTML 文件組成的測試示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha256-pasqAKBDmFT4eHoN2ndd6lN370kFiGUFyTiUHWhU7k8=" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.1/jquery.validate.min.js"></script>
    <script>
        $(function(){
            $('#myForm').validate({
                rules:
                {
                    name:
                    {
                        required:true,
                        remote:'nameCheck1.php'
                    },
                    email:
                    {
                        required:true,
                        email:true
                    }
                }
            }); 
        });
    </script>
</head>
<body>
    <form action="http://modx.megabulk.ru" method="post" id="myForm">
        <input type="text" name="name" placeholder="имя">
        <br><br>
        <input type="text" name="email" placeholder="e-mail">
        <br><br>
        <input type="submit">
    </form> 
</body>
</html>

和帶有以下代碼的PHP文件:

<?php
    $users = array ("Poul", "Anna", "Malika", "Jack", "Elena");
    $newUser = $_POST['name'];


    if (in_array($newUser, $users)) 
    {
        return false;
    }
    else
    {
        return true;
    }
?>

然后我開始測試我的表格。 在瀏覽器控制台中,我看到以下錯誤:

TypeError: undefined is not an object (evaluating 'b.apply').  Exception occurred when checking element , check the 'remote' method.

我認為我的插件很舊並嘗試使用最新版本但我遇到了同樣的錯誤。

誰能告訴我我做錯了什么? 我該如何修復這個錯誤?

提前致謝!

您缺少一個腳本文件,包含此腳本應該可以解決問題。

<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/additional-methods.min.js"></script>

我的代碼中出現以下錯誤

  • 默認情況下,數據通過數組 GET 傳遞,我通過 POST 傳遞它們
  • 用戶 gaetanoM 是對的,我不應該使用 return 而是在處理程序中使用 echo
  • 我使用了不包含 ajax 方法的精簡版 jQuery

通過修復所有這些錯誤,我得到了正確的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM