使用 ajax 访问模板的 php 个变量
Access php variables of a template with ajax
我知道这个问题已经在其他主题中得到了解答,但出于某种原因它对我不起作用,我不明白为什么。
我用 ajax 调用了一个模板,其中设置了一些 php 变量,我需要获取这些值。
第一-template.php
<?php
$advert = array(
'ajax' => 'Hello world!',
'advert' => 'Bye',
);
echo json_encode($advert);
?>
秒-template.php
?>
<script>
jQuery(document).ready(function($){
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
alert(result['ajax']); // "Hello world!" alerted
alert(result['advert']) // "Bye" alerted
},
error : function(xhr, status, error) {
alert(error);
}
});
});
</script>
它是这样显示的here但是函数returns错误。
首先,也许,您可以将请求类型更改为 GET,因为您没有 post 任何东西,但试图获取信息。
<script>
jQuery(document).ready(function($){
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
alert(result['ajax']); // "Hello world!" alerted
alert(result['advert']) // "Bye" alerted
},
error : function () {
alert("error");
}
});
});
</script>
编辑:
这是一个功能脚本:
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(function() {
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
console.log(result);
},
error : function(xhr, status, error) {
alert(error);
}
});
});
</script>
查看修改:
- GET 而不是 POST
- console.log(结果)看结果
在我的浏览器控制台中:
Object { ajax: "Hello world!", advert: "Bye" }
请确认一下,您是否正确加载 JQuery 并且是否在 WAMP/LAMP 服务器上工作?
你能post整个文件的代码吗?
编辑 2:
在控制台检查错误,post在这里,这样以后更容易找到问题。
我知道这个问题已经在其他主题中得到了解答,但出于某种原因它对我不起作用,我不明白为什么。
我用 ajax 调用了一个模板,其中设置了一些 php 变量,我需要获取这些值。
第一-template.php
<?php
$advert = array(
'ajax' => 'Hello world!',
'advert' => 'Bye',
);
echo json_encode($advert);
?>
秒-template.php
?>
<script>
jQuery(document).ready(function($){
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
alert(result['ajax']); // "Hello world!" alerted
alert(result['advert']) // "Bye" alerted
},
error : function(xhr, status, error) {
alert(error);
}
});
});
</script>
它是这样显示的here但是函数returns错误。
首先,也许,您可以将请求类型更改为 GET,因为您没有 post 任何东西,但试图获取信息。
<script>
jQuery(document).ready(function($){
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
alert(result['ajax']); // "Hello world!" alerted
alert(result['advert']) // "Bye" alerted
},
error : function () {
alert("error");
}
});
});
</script>
编辑:
这是一个功能脚本:
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(function() {
$.ajax({
beforeSend: function(){
alert('Requesting...');
},
url : 'first-template.php',
type : 'GET',
dataType : 'json',
success : function (result) {
console.log(result);
},
error : function(xhr, status, error) {
alert(error);
}
});
});
</script>
查看修改:
- GET 而不是 POST
- console.log(结果)看结果
在我的浏览器控制台中:
Object { ajax: "Hello world!", advert: "Bye" }
请确认一下,您是否正确加载 JQuery 并且是否在 WAMP/LAMP 服务器上工作?
你能post整个文件的代码吗?
编辑 2:
在控制台检查错误,post在这里,这样以后更容易找到问题。