javascript - Ajax 没有回答我真实的情况

标签 javascript php jquery ajax

这是 html div:

<div class="alert alert-success alert-dismissable feedstatus hidden">
                          <button type="button" class="close" data-dismiss="alert">&times;</button>
                          <span class="glyphicon glyphicon-ok-sign" style="color:#0c0; font-size:40px;"> </span></a><br/>Message recieved.<br/>Thanks <strong class="feedbacker"></strong> 
                        </div>
                        <form role="form" onsubmit="regFeedback()">
                            <div class="form-group">
                                <input class="form-control bordering" id="feedbacker" type="text" name="name" placeholder="Name" style="border:none; border:0px solid #fff;" required/><br>
                                <input class="form-control bordering" id="feedbackemail" type="email" name="email" placeholder="tu@email.com" style="border:none; border:0px solid #fff;"  required/><br>
                                <textarea class="form-control bordering" id="feedback" name="feedback" placeholder="Write me something before go" style="border:none; border:0px solid #fff;"  required/></textarea><br>
                                <button type="submit" class="btn btn-block">Send</button>
                            </div>
                        </form>
                    </div>

另一方面,JavaScript:

function regFeedback() {
var name=document.getElementById('feedbacker').value;
var mail=document.getElementById('feedbackemail').value;
var feed=document.getElementById('feedback').value;
var xmlhttp;
if (window.XMLHttpRequest) {
    xmlhttp=new XMLHttpRequest();
 } else {
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
   xmlhttp.onreadystatechange=function() {
    if (this.readyState==4 && this.status==200) {
        $(document).ready(function() {
           $("form").remove();
           $(".feedstatus").removeClass("hidden");
           $(".feedbacker").text(name);
           alert("Mensaje recibido. Gracias");
       });
   }
   };
    xmlhttp.open("GET","https://page.php?name="+name+"&email="+mail+"&feedback="+feed,true);
   xmlhttp.send();
   }

数据到达数据库,但回调事件验证:“if (this.readyState==4 && this.status==200) {”看起来不起作用。我是这方面的新手,但我做得很好。但是从一个时刻编辑到另一个时刻,出现了问题:/

最佳答案

未经测试,但我认为可以代替

 if (this.readyState==4 && this.status==200) 

将会

if (xmlhttp.readyState==4 && xmlhttp.status==200) 

this 是 javascript 中的关键字,它指的是一个对象;即上下文中的主题,或执行代码的主题

令人惊讶的是,看到document.ready函数位于ajax成功函数内

关于javascript - Ajax 没有回答我真实的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43863526/

相关文章:

php - PHP 和 libapache2_mod_php 有什么区别

jQuery 将鼠标悬停在父级上而不是子级上

javascript - 未加载动态添加的 CSS 文件

javascript - 使用 validator.js 的电子邮件验证无法正常工作

javascript - 如何检索隐藏字段中的数组

javascript - 使用 JavaScript/jQuery 将字符串分解为字符并将声音附加到每个字符

php - 显示 tmp 目录中的图像

php - .htaccess 启用 php 文件信息扩展

javascript - 如何测试输入是否在 if 结构中具有焦点?

jquery - Angular-ui 引导模式打开太慢