单击div #some_id
调用details.php
,但它无法从jQuery中检索数据。 details.php
应该回复123
。
我的目标是,当我点击div #some_id
时,details.php
会在浏览器中显示123
。
HTML:
<div id="some_id">
<a href="details.php"> Details </a>
</div>
jQuery的:
function detailsClick(){
$("#some_id").live('click', function(){
var data = {'myData': 123};
$.post('details.php', data);
});
}
details.php:
<?php
$idNumber = $_POST["myData"];
echo ($idNumber);
?>
答案 0 :(得分:7)
我相信你没有在这里获得点击事件。更改jQuery代码如下。
$(function(){
$("#some_id").on('click', function(){
var data = {'myData': '123'};
$.post( "details.php", data)
.done(function( data ) {
alert( "Data Loaded: " + data );
});
});
});
答案 1 :(得分:2)
.live()
已弃用。请改用.on()
。detailsClick()
。因此,onclick
听众不已注册。要么这样做。
function detailsClick(){
$("#some_id").live('click', function(){
var data = {'myData': 123};
$.post('details.php', data);
});
}
detailsClick();
或者这样做..
$(document).ready(function(){
$("#some_id").live('click', function(){
var data = {'myData': 123};
$.post('details.php', data);
});
});
另外,你需要使用AJAX来做你想做的事。
答案 2 :(得分:2)
它没有显示任何内容,因为正在遵循链接,没有发布数据。
<a href="details.php"> Details </a>
Ajax用于在不更改页面的情况下获取数据。好像您想要导航到详细信息页面。
如果您希望页面导航到details.php
,请使用带有提交按钮的普通html表单。
如果您想在不改变页面的情况下返回数据
详情
$("#some_id").on('click', function(e){
e.preventDefault().
var data = {'myData': 123};
$.post('details.php', data)
.done(function(response){
// data is available here
console.log(response);
});
});