我在之前的帖子中已经看到了这个问题的一些答案,但没有人给出一个真正的工作示例,只是伪造的代码。有没有人曾经这样做过?
基本上,我所拥有的是javascript(jquery)中的变量,我想使用此变量来驱动查询(对于覆盖窗口)我将在php中运行。
根据我的阅读,您可以使用对同一页面的ajax调用来执行此操作,因此它不会自行刷新,但我必须丢失一些东西,因为我无法使其正常工作...
那里有任何例子吗?
感谢。
更新2010年6月21日: 好吧,我试图通过但仍然有一些问题......这就是我所拥有的。我在edit_1.php中处理的页面。基于Firebug控制台,页面(edit_1.php)正在接收正确的'editadid'。
当我尝试回应它时,我得到一个'未定义的变量'错误但是...任何你都可以看到我错过了吗?
这是javascript:
var jsVariable1 = $(this).parent().attr('id');
var dataString = 'editadid=' + jsVariable1;
$.ajax({
url: 'edit_1.php',
type: 'get',
data: dataString,
beforeSend: function() {
},
success: function (response) {
}
});
这是我的php: 如果(isset($ _ GET [ 'editadid'])) { $ editadid =(int)$ _ GET ['editadid'];
}
echo $ editadid;
答案 0 :(得分:1)
如果没有看到您当前使用的代码,很难提供帮助。
在jQuery中:
var jsVariable1 = "Fish";
var jsVariable2 = "Boat";
jQuery.ajax({
url: '/yourFile.php',
type: 'get',
data: {
var1: jsVariable1,
var2: jsVariable2
},
success: function (response) {
$('#foo').html(response);
}
});
然后你的PHP:
<?php
$jsVariable1 = $_GET['var1'];
$jsVariable2 = $_GET['var2'];
// do whatever you need to do;
?>
<h1><?php echo $jsVariable1; ?></h1>
<p><?php echo $jsVariable2; ?></p>
这是相当通用的...但它会做的事情。
需要注意的一个重要事项是一个非常常见的错误,即由于AJAX请求而对DOM进行的任何添加(即在此示例中我添加了h1
和{{ 1}}标记到DOM),除了使用jQuery的live
和delegate
方法之外,不会绑定绑定到p
的任何事件处理程序。
答案 1 :(得分:1)
我想说的是,你必须了解ajax是如何工作的,而不是寻找一个例子。如何通过ajax访问URL并将查询参数与它们一起传递(这些可以是您正在寻找的javascript变量)如何在javascript中捕获服务器端响应并用于操作现有页面dom。或者更好的是你可以发布你尝试过的东西,有人可以为你纠正它。