我正在尝试将一个简单的变量从我的jQuery传递到我的php,然后在我的HTML上回显它。它似乎没有用。
我无法将变量$ result显示在我的页面上。有什么想法吗? Ajax POST似乎工作正常。问题似乎是php和HTML之间的沟通。
的index.html:
<!DOCTYPE html>
<html>
<head>
<title>My Site</title>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type='text/javascript' src='front.js'></script>
</head>
<body>
<?php echo $result; ?>
</body>
</html>
front.js:
$(document).ready(function() {
$.post('/back.php', {name: "Bob"}, function(data) {
});
});
back.php:
<?php $result = $_POST['name']; ?>
答案 0 :(得分:2)
试试这个
<强>的index.html:强>
<!DOCTYPE html>
<html>
<head>
<title>My Site</title>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type='text/javascript' src='front.js'></script>
</head>
<body>
</body>
</html>
的 front.js:强>
$(document).ready(function() {
$.post('/back.php', {name: "Bob"}, function(result) {
$('body').html(result);
});
});
<强> back.php:强>
<?php echo $_POST['name']; ?>
答案 1 :(得分:1)
更改此
<body>
<div id="show-data"></div>
</body>
和
$(document).ready(function() {
$.post('/back.php', {name: "Bob"}, function(data) {
$('#show-data').html(data);
});
});
和
<?php echo $result = $_POST['name']; ?>
答案 2 :(得分:1)
Change Your PHP Code :
<?php echo $_POST['name']; ?>
And Also Your HTML Code :
<!DOCTYPE html>
<html>
<head>
<title>My Site</title>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
</head>
<body>
</body>
<script>
$(document).ready(function() {
$.post('/back.php', {name: "Bob"}, function(data) {
$('body').append(data)});
});
</script>
</html>
答案 3 :(得分:1)
$result
与index.html中的$result
无关。在back.php中设置它对index.html没有影响。如果你在back.php中回显一些东西,那么该输出将被传递给你在$ .post()调用中的空回调函数。您可以在那里处理数据并使用javascript将其插入您的页面。
答案 4 :(得分:0)
只需在代码中添加以下行:$('body').html(data);
答案 5 :(得分:0)
与您的问题一样,我们有三个不同的文件,一个是index.html 1)index.html
<!DOCTYPE html>
<html>
<head>
<title>My Site</title>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type='text/javascript' src='front.js'></script>
</head>
<body>
<?php echo $result; ?>
</body>
</html>
2)front.js
$(document).load(function(){
$.ajax({
url: '/back.php',
type: 'POST',
data: 'name=Bob',
async: false,
success: function(data) {
$('body').html(data);
},
cache: false
});
});
3)back.php
<?php echo $result = $_POST['name']; ?>
现在使用它,你的文件就可以了。如果您有任何疑问,请与我们联系。
答案 6 :(得分:-1)
<?php echo $_POST['name']; ?>
并将您的请求更改为
$.get('/index.php', {name: "Bob"}, function(data) {
});
会导致网站不断重新加载, 或者将结果存储在$ _SESSION中(请参阅PHP会话处理),并在index.php中检索它(您必须重命名该文件)。