使用 jQuery 面临 ajax 问题[关闭]

Posted

技术标签:

【中文标题】使用 jQuery 面临 ajax 问题[关闭]【英文标题】:Facing issue with ajax with jQuery [closed] 【发布时间】:2013-01-08 00:08:18 【问题描述】:

我有带有电子邮件和密码的registration.php页面,该页面在提交时调用了一个函数 即

         the function ChkVal() is written in comman.js file i.e

        function ChkVal()
        
               var Valid = true;
               var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]2,4)$/;
               var address = document.getElementById("Email").value;
               if(reg.test(address) == false) 
               
       ////somecode to check if it is valid email id or not
                
               else
               


    this is the section where i have the problem 

                   $(function() 

                          $.ajax(
                                url  : 'RegCheck.php',
                                type : 'POST',
                                data : 'User=' + address,
                                success : function(result)
                                   if(result != "No")
                                   
                                       document.getElementById("EmailChk").innerhtml = result;   
///the result return from RegCheck.php will be Either already exist or No


                                       Valid = false;
                                   
                                

                          );              


                   );                         
                  document.getElementById("MailMand").innerHTML = "" ;

               

如果我在此处放置警报消息,则在返回 Valid 之前没有问题或向下任何位置,但如果我删除警报消息,则查询将数据插入数据库...

               return Valid;

        ;

【问题讨论】:

你的请求是异步的,所以没有立即设置有效值。此外,您的代码设计不正确。您使用的是 jquery,那为什么不使用 validate 插件呢?示例alittlecode.com/files/jQuery-Validate-Demo 用邮箱和密码注册???? 并使用 $("EmailChk").html(...);现在你已经有了 jQuery 对不起,我不像你那样专家,因为我刚刚开始学习 jquery,但无论如何感谢您的回复 您的具体问题是什么。你能解释一下吗?您要查找的输出是什么? 【参考方案1】:

你必须学习更多关于 jquery ajax。 来自 ajax 的响应应该是 html 形式。您可以在success 块上请alert 它,然后您就可以理解问题了。 就这样试试吧。

else

   $.ajax(
             url  : 'RegCheck.php',
             type : 'POST',
             data : User: address,
                    success : function(result)
                       alert(result);
                       if(result != "No")
                       
                         document.getElementById("EmailChk").innerHTML = result;                      Valid = false;
                       
                    

               );              




【讨论】:

我不想弹出警报消息,而是希望结果显示在标签标签 $('#EmailChk').append(result);如果结果不等于 NO,如果结果等于 NO,则将其插入数据库 我不是那个意思。我添加了警报以检查来自ajax 的响应。如我所示,您是否编辑了data。这是通过ajax 请求传递变量的正确方法。

以上是关于使用 jQuery 面临 ajax 问题[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Jquery、PHP、Mysql 进行 Ajax 分页 [关闭]

如何优化 Jquery 中的 ajax 请求? [关闭]

将 jQuery 用于 AJAX 与 ASP.NET Webforms [关闭]

Django + ajax(jquery):http错误代码403(禁止)[关闭]

jquery ajax返回的页面是html该怎么解决?

html标签在点击时使用jquery和ajax向上或向下传输[关闭]