我的主页:
$(function(){
$('.controls').click(function(){
var id = $(this).attr('id'); //which in this case will be "pets"
$.ajax({
type:"POST",
data:"page="+id,
url:"controller.php",
success:function(result){
$('#content').html(result);
}
});
});
});
</script>
if (isset($_GET['myFave'])){
?>
<script>
$(function(){
var animal = "<?php echo $_GET['myFave'];?>";
$('#pets').trigger('click',[{'myFave':animal}]);
});
</script>
<?php
}
?>
Controller.php这样
$page = $_POST['page']; //which will be "pets"
require_once($page.".php");
pets.php
<table align='center'>
////some data
/// how do i access trigger here?
如果用户点击了网址http://server.com?myFave=dog
在我的主页上我需要触发点击“宠物”。
在主页上:
我如何访问pets.php触发器中传递的参数的值?
答案 0 :(得分:1)
您没有将该变量的值发送给controller.php
,所以现在您无权访问它。
要发送它,您可以执行以下操作:
主页:
$(function(){
$('.controls').click(function(event, myFave){
^^^^^^ get the additional parameters you might send in
var id = $(this).attr('id'); //which in this case will be "pets"
$.ajax({
type:"POST",
// Send all data to the server
data: {page: id, myFave: myFave},
^^^^^^^^^^^^^^ also send this key-value pair
url:"controller.php",
success:function(result){
$('#content').html(result);
}
});
});
});
</script>
if (isset($_GET['myFave'])){
?>
<script>
$(function(){
var animal = "<?php echo $_GET['myFave'];?>";
$('#pets').trigger('click',[animal]);
^^^^^^^^ Add the extra parameter values
});
</script>
<?php
}
?>
然后您可以在pets.php
中访问它:
$myFave = isset($_POST['myFave']) ? $_POST['myFave'] : null;
或者,您可以使用会话在请求之间将该值保留在服务器上。