javascript - 在同一页面上使用ajax将js变量传递给php

标签 javascript php ajax

这是我的 html 代码:

<form id="form" action="javascript:void(0)">
<input type="submit" id="submit-reg" value="Register" class="submit button" onclick="showtemplate('anniversary')" style='font-family: georgia;font-size: 23px;font-weight: normal;color:white;margin-top:-3px;text-decoration: none;background-color: rgba(0, 0, 0, 0.53);'>    
</form>

这是我的 JavaScript 代码:

function showtemplate(temp)
{
    $.ajax({
        type: "POST",
        url: 'ajax.php',
        data: "section="+temp ,
        success: function(data)
        {
            alert(data);
        }
    });  
}  

这是我的 ajax.php 文件:

<?php
$ajax=$_POST['section'];
echo $ajax;
?>

以上 html 和 javascript 代码包含在名为 slider.php 的文件中。在我的索引文件中,我包含了 slider.php 文件,并且 slider.php 位于 slider 文件夹内。所以基本上index.php和slider.php不在同一个文件夹内。

Javascript 代码正确地警告数据。但在我的 php 代码(ajax.php 文件)中,$_POST['section'] 的值为空。我的代码有什么问题。我尝试用谷歌搜索所有内容并尝试了一些代码,但它仍然不起作用。请帮帮我

最佳答案

试试这个:

$.ajax({
        type: "POST",
        url: 'ajax.php',
        data: { 'section': temp},
        success: function(data)
        {
            alert(data);
        }
    }); 

您的服务器很可能不理解您构造的字符串( "section="+temp )。使用ajax时,我更喜欢发送对象,因为对象要有效,它需要特定的格式。

编辑1:

试试这个,如果不起作用请告诉我:

$.post('ajax.php', {'section': temp}, function(data}{
  alert(data);
});

关于javascript - 在同一页面上使用ajax将js变量传递给php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31936434/

相关文章:

php - 使用ajax-jquery并使用sql查询获取数据。如何处理响应?

javascript - Yii2 - 在 GridView 中使用 Ajax/Pjax 通过 switch toogle 更新数据

php - PHP中按分隔符搜索单词并将其放入数组中

php - 在 PHP 内的 HTML 表内的 JQuery 内嵌入 php ...不会触发

javascript - 如何使用 Javascript/JQuery 截取当前网页的屏幕截图?

javascript - 通过 HTML 初始化 Angular 2 组件的正确方法

php - 从 MYSQL 中获取数据并显示在 JSON 文件中

javascript - Microsoft Edge 阻止发送到同一专用网络 CIDR 中的 IP 的跨域请求

javascript - 我可以保护原生 JavaScript 函数吗

javascript - 将对象推送到状态对象中的数组。 ReactJS