Javascript 如何将ajax发送到同一页面?

Javascript 如何将ajax发送到同一页面?,javascript,php,ajax,Javascript,Php,Ajax,我正在使用纯js将ajax请求发送到other.php页面,我对ajax概念非常陌生,所以我知道的不多。 我看过jqueryajax,但我更喜欢学习纯jsajax,这样我就可以理解ajax是如何工作的 我需要将ajax发送到同一个页面,而不是发送到另一个页面来处理数据。有可能吗?怎么做 我的索引页: <div id="response"></div> <form method="post" id="myForm"> <span&g

我正在使用纯js将ajax请求发送到other.php页面,我对ajax概念非常陌生,所以我知道的不多。 我看过jqueryajax,但我更喜欢学习纯jsajax,这样我就可以理解ajax是如何工作的

我需要将ajax发送到同一个页面,而不是发送到另一个页面来处理数据。有可能吗?怎么做

我的索引页:

<div id="response"></div>
    <form method="post" id="myForm">
        <span>Username: </span>
        <input type="text" name="uname" id="uname">&nbsp;&nbsp;
        <span>Age: </span>
        <input type="number" name="age" id="age">&nbsp;&nbsp;
        <input type="submit" name="submit" value="Submit"><br>
    </form>
    <script src="js/app.js"></script>
尝试使用Jquery

<script type="text/javascript">
    $(document).ready(function(){
        $.ajax({
            url: 'ajax-thing.php',
            data: "uname="+uname+"&age="+age,
            success: function(data) {
            console.log(data); // it will show the result in console
            }
       });
   });
</script>

$(文档).ready(函数(){
$.ajax({
url:'ajax thing.php',
数据:“uname=“+uname+”&age=“+age,
成功:功能(数据){
console.log(data);//它将在控制台中显示结果
}
});
});
尝试使用Jquery

<script type="text/javascript">
    $(document).ready(function(){
        $.ajax({
            url: 'ajax-thing.php',
            data: "uname="+uname+"&age="+age,
            success: function(data) {
            console.log(data); // it will show the result in console
            }
       });
   });
</script>

$(文档).ready(函数(){
$.ajax({
url:'ajax thing.php',
数据:“uname=“+uname+”&age=“+age,
成功:功能(数据){
console.log(data);//它将在控制台中显示结果
}
});
});

这是可能的。在服务器上,您只需要验证ajax请求(当您使用ajax发出请求时,请求将附加一个标题
X-request-With:XMLHttpRequest
)。如果您想让这变得更简单,您可以向url添加新参数,以注意服务器知道这是一个ajax请求,例如:
ajax thing.php?uname='+uname+'&age='+age+'&ajax=1'
,如果是ajax请求,则返回您想要的任何内容。

这是可能的。在服务器上,您只需要验证ajax请求(当您使用ajax发出请求时,请求将附加一个标题
X-request-With:XMLHttpRequest
)。如果您想让这变得更简单,您可以向url添加新的参数,以注意服务器知道这是一个ajax请求,例如:
ajax thing.php?uname='+uname+'&age='+age+'&ajax=1'
,如果是ajax请求,则返回您想要的任何内容。

首先,在您的案例中,jquery不是成功的必要条件。其次,您能解释一下为什么需要将ajax请求发送到同一页面吗?在我看来,您必须编写条件语句来阻止原始表单和其他内容在responseText中传回。如果能够做到这一点,那么将ajax指向一个单独的文件进行处理将更轻松、更清晰。其次,您能解释一下为什么需要将ajax请求发送到同一页面吗?在我看来,您必须编写条件语句来阻止原始表单和其他内容在responseText中传回。如果可以的话,将ajax指向一个单独的文件进行处理会更轻松、更干净。我想我提到我使用纯JS是有原因的。我想我提到我使用纯JS是有原因的。所以我必须在url的末尾添加(&ajax=1)?我的意思是,我不想将ajax请求发送到(ajax thing.php)页面,而是希望将其发送到同一页面(index.php)。这是可能的吗?这是可能的,这个参数只是告诉服务器知道这个由Ajax发送的请求,您可以更轻松地处理这个请求。Ajax不关心您的url是否与页面相同。所以不用担心,但是我试着将请求发送到同一个页面,结果是整个文档,我的意思是它打印出当前页面中html文档的结构,你知道问题出在哪里吗?您以前是否尝试过将请求发送到同一页面?如果你能举个例子说明我是如何做到的,我会感谢你的帮助。。谢谢。不,你有问题。但您需要处理ajax请求。您可以试试。如果您需要更多支持,请与我联系:那么我必须在url末尾添加(&ajax=1)吗?我的意思是,我不想将ajax请求发送到(ajax thing.php)页面,而是希望将其发送到同一页面(index.php)。这是可能的吗?这是可能的,这个参数只是告诉服务器知道这个由Ajax发送的请求,您可以更轻松地处理这个请求。Ajax不关心您的url是否与页面相同。所以不用担心,但是我试着将请求发送到同一个页面,结果是整个文档,我的意思是它打印出当前页面中html文档的结构,你知道问题出在哪里吗?您以前是否尝试过将请求发送到同一页面?如果你能举个例子说明我是如何做到的,我会感谢你的帮助。。谢谢。不,你有问题。但您需要处理ajax请求。您可以试试。如果您需要更多支持,请与我联系:
<script type="text/javascript">
    $(document).ready(function(){
        $.ajax({
            url: 'ajax-thing.php',
            data: "uname="+uname+"&age="+age,
            success: function(data) {
            console.log(data); // it will show the result in console
            }
       });
   });
</script>