这是我的 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/