我正在使用 PHP 创建我的出勤网页,当用户进入时,他会获得当月的出勤率。用户可以使用下拉菜单更改月份,这会刷新整个页面。我只想刷新表格而不是重新加载整个页面。
谁能告诉我如何使用 PHP 做到这一点。
我正在使用 PHP 创建我的出勤网页,当用户进入时,他会获得当月的出勤率。用户可以使用下拉菜单更改月份,这会刷新整个页面。我只想刷新表格而不是重新加载整个页面。
谁能告诉我如何使用 PHP 做到这一点。
PHP 运行服务器端。非常广泛地,这就是来自用户的请求所发生的情况:
您可以做的是使用 AJAX 发送请求。改变的是浏览器获取响应,但不会更改页面内容,它只是抛出一个事件,其中 myPage.html 内容可用,但您可以在 JavaScript 中随意使用。在 PHP 方面,你什么都不能改变,重要的部分是你必须编写更新页面的 JavaScript。
显然,由于您只更改了页面的一部分,因此最好不要将整个 myPage.html 从服务器发送回,而只发送更改的页面部分,或者可能是有关如何更改页面的蓝图。
*) myPage.html 实际上并不存在。严格来说,这是我为 PHP 脚本 myPage.php 的输出命名的名称。
您可以在整个网络上找到有关 AJAX 的优质资源。我将给出一个最有信誉的链接,但请随意找到一个或多个适合您的链接。
https://developer.mozilla.org/en-US/docs/AJAX
PS:既然你把问题标记为jQuery,你应该知道jQuery对AJAX的支持非常好。我建议您(学习)使用它。
你必须使用AJAX来处理这些事情。阅读有关。
您可以使用 ajax 在下拉列表的更改事件上发送 http 请求以将其保存在数据库中 这是发送请求的示例代码
function makeattan(p)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","afilename.php,false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
}
为此使用 Ajax。
构建一个函数,该函数将通过 ajax 从服务器获取当前页面。然后将数据放在页面的同一区域内,并用新内容替换旧内容。
您可以使用 jQuery加载
例如
$( "#result" ).load( "ajax/test.html", function() {
alert( "Load was performed." );
});
注意,加载会自动替换内容。
您必须使用 AJAX,例如同时使用 PHP 和 jQuery;类似的东西:
HTML:
<a href="yourScript.php" class="ajaxLink">Load content</a>
<div id="dynamicContentDiv">
</div>
JS:
$( function() {
$( ".ajaxLink" ).on( "click", function() {
var ajaxUrl = $( this ).attr( "href" );
$.get({
ajaxUrl,
function( response ) {
$( "#dynamicContentDiv" ).html( response );
}
});
}
}
使用这个基本脚本,您向脚本发送 GET 请求,并将响应放入dynamicContentDiv
; 请参阅 jQuery 文档和 AJAX 资源以了解更高级的行为。;)