获取post-jquery并在$_post中回显它(这可能吗?)
get post jquery and echo it in $_POST(is that possible?)
我正在学习如何将数据发布到服务器。我想点击一个链接并将其数据发布到同一页面中的服务器,我需要一个表格吗?可以在没有表格的情况下发布数据吗?我在php中看不到结果。我应该在这里获得任何成功或完成函数以获得结果吗?我也尝试过Jquery手册的最后一个例子,但没有内容div可以看到任何结果,所以我无法理解。
我不想显示数据并将其附加在html中,我想在$_POST中看到它,如果无法在同一页面中显示它,我可以接受,我只想看到$_POST可以从JQUERY 获得数据
<?php
if(isset($_POST["name"]))
echo $_POST["name"];
?>
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#link").click(function(){
$.post("newfile5.php",
{
name: $("#link").val()
}
});
$('form#myform').submit();
});
</script>
</head>
<body>
<form id="myform" action="newfile5.php" method="POST">
<a id="link" href="" value="A">Send</a>
</form>
</body>
</html>
PS:我更新了答案,但仍然没有结果:
<?php
if(isset($_POST["name"]))
echo $_POST["name"];
?>
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#link").click(function(e){
e.preventDefault();
$.post("newfile5.php",
{
name: $("#link").data("value")
},
function(data)
{
// Whatever is returned by newfile5.php
}
});
});
</script>
</head>
<body>
<a id="link" href="" data-value="A">Send</a>
</body>
</html>
我希望看到$_POST['name']具有值A,仅此
使用data-attr
存储数据。
<a id="link" href="" data-value="A">Send</a>
使用
console.log($("#link").data("value"));
所以你的代码变成
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#link").click(function(e){
$("#disp_name").html($("#link").data("value"));
e.preventDefault();
$.post("newfile5.php",
{
name: $("#link").data("value")
},
function(resp)
{
console.log(resp); // Whatever is returned by newfile5.php
}
});
});
</script>
</head>
<body>
<div id="disp_name"></div>
<form id="myform" action="newfile5.php" method="POST">
<a id="link" href="" data-value="A">Send</a>
</form>
</body>
</html>
并且不要使用$('form#myform').submit();
要在PHP中获取数据,请使用
$name = $_POST["name"];
我想点击一个链接并将其数据发布到同一页面中的服务器,我需要一个表格吗?
没有。你可以在没有表格的情况下发布数据。
编辑
编辑后回答问题(如果我很理解的话):
在我看来,这实际上像是一个X-Y问题,但答案是-否。
PHP无法干扰客户端浏览器。AJAX只是服务器(PHP)和已完全呈现的页面之间的"桥梁"。(您可能想了解WebSockets)
完全呈现的页面不再可以访问PHP变量(无论是jQuery还是任何其他客户端语言都无关紧要)。当与服务器的连接完成(页面完全呈现)时,所有PHP命名的变量和方法都不存在了。它们只能在页面呈现时设置(这是让这两种语言同时工作的唯一方法),例如:
<script>
var myData = "<?php echo 'something'; ?>";
</script>
基本上,$.post
用于与服务器进行通信。如果不需要,则可以访问页面本身中的数据,甚至不需要$.post
。
您有一个触发器事件(单击)。您设置事件以确定何时应该采取行动以及当时应该发生什么。无论是AJAX请求还是其他任何请求。
如果需要AJAX:
var myData = '';
$("#link").click(function(e){
$.post(
"newfile5.php",
{name: $("#link").attr('value')},
function( data ) {
myData = data;
doSomething();
// do something else with the data here. ...
}
);
});
如果不需要发布任何数据:
var myData;
$("#link").click(function(e){
myData = $("#link").attr('value');
doSomething();
});
方法:
function doSomething(){
if(myData){
alert(myData);
}else{
// ...
}
}
在php中访问$_POST
变量
编辑:
首先,你把两种不同的方式结合在一起,同时又做错了。您正在发出一个AJAX请求,然后发送一个没有值的普通HTTP请求。这两个错误,试试这个例子,它会发出一个Ajax Post Request,并在Alert中向您显示结果。
<?php
if(isset($_POST["name"]))
echo $_POST["name"];
?>
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#link").click(function(){
$.post("newfile5.php",
{
name: 'Some Name'
}, function(data) {
alert(data)
}
});
});
</script>
</head>
<body>
<form id="myform" action="newfile5.php" method="POST">
<a id="link" href="" value="A">Send</a>
</form>
</body>
</html>
- 使用jQuery动态添加表并在其中动态添加行
- 遍历类元素数组,并在jquery中选择同级元素
- 打开一个选项卡,并在firefox网络扩展中向其发出POST请求
- 如何使用Jquery水平打印表中的数组元素,并在某个元素之后垂直打印
- 如何使用jQuery来添加分段的表单字段,并在添加不同值时进行更新
- 如何通过jQuery选中所有复选框并在单击一个复选框时取消选择
- 使用jQuery延迟表单输入,并在延迟后在同一页面上显示结果
- JQuery-重新加载Div并在点击时调用API
- 如何使用jQuery更改当前URL并在单击时打开新选项卡
- 使用简单的JavaScript或jQuery单独识别每个选择选项,并在DIV中显示
- 当行增加时自动递增序列号,并在 jQuery 中删除行时自动重新调整编号顺序
- 多次克隆对象并在jQuery中附加克隆
- 获取post-jquery并在$_post中回显它(这可能吗?)
- 获取带有textarea的复选框,并在单个jquery中进行选择
- 如何在 $.post jQuery 中等待响应
- 在 $.post - JQuery 中创建动态变量赋值
- jQuery$.post,并在生成的HTML中进行搜索
- 在jquery或javascript中获取对象值并发出post请求
- 从id为'post-1'并在jQuery函数中使用
- jquery -通过POST (ajax)发送JSON数据并在php中检索