我正在使用PHP创建我的考勤网页,当用户进入时,他会得到当前月份的考勤。用户可以使用下拉菜单更改月份,这会刷新整个页面。我只希望刷新表,而不是重新加载整个页面。有谁能告诉我如何使用PHP做到这一点吗?
0pizxfdo1#
PHP运行在服务器端。从广义上讲,这就是来自用户的请求所发生的情况:1.用户点击下拉选项1.浏览器向服务器发送新页面请求(myPage.php)1.服务器在myPage.php上运行PHP代码,产生一些通常是HTMl的输出(myPage.html *)1.服务器以myPage.html响应1.浏览器将页面内容更改为myPage.html你可以使用 AJAX 发送请求。所做的改变是浏览器得到响应,但不改变页面内容,它只是抛出一个事件,其中包含myPage.html内容,你可以在JavaScript中随意使用。在PHP端,你什么也不能改变,重要的是你必须编写JavaScript来更新页面。显然,由于您只更改了页面的一部分,因此最好不要将整个myPage.html从服务器发送回来,而只发送页面中发生更改的部分,或者发送如何更改页面的蓝图。
你可以在网上找到关于 AJAX 的好资源。我会给予一个链接到最有信誉的一个,但请随意找到一个或多个适合你的。https://developer.mozilla.org/en-US/docs/AJAXPS:既然你把问题标记为jQuery,你应该知道jQuery对 AJAX 有很好的支持。我推荐你(学习)使用它。http://api.jquery.com/jQuery.ajax/
snz8szmq2#
你必须使用** AJAX **来做这些事情。阅读相关内容。
guicsvcw3#
你可以使用 AJAX 发送http请求的dropdownlist的改变事件保存在数据库这里是发送请求的示例代码
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; }
yxyvkwin4#
请使用 AJAX 。构建一个函数,通过 AJAX 从服务器获取当前页面,然后将数据放入页面的同一区域,并用新内容替换旧内容。您可以使用jQuery load例如
$( "#result" ).load( "ajax/test.html", function() { alert( "Load was performed." ); });
注意,加载会自动替换内容
jw5wzhpr5#
您必须使用 AJAX ,例如同时使用PHP和jQuery;就像这样:于飞:
<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 资源以获得更高级的行为。)
dynamicContentDiv
5条答案
按热度按时间0pizxfdo1#
PHP运行在服务器端。从广义上讲,这就是来自用户的请求所发生的情况:
1.用户点击下拉选项
1.浏览器向服务器发送新页面请求(myPage.php)
1.服务器在myPage.php上运行PHP代码,产生一些通常是HTMl的输出(myPage.html *)
1.服务器以myPage.html响应
1.浏览器将页面内容更改为myPage.html
你可以使用 AJAX 发送请求。所做的改变是浏览器得到响应,但不改变页面内容,它只是抛出一个事件,其中包含myPage.html内容,你可以在JavaScript中随意使用。在PHP端,你什么也不能改变,重要的是你必须编写JavaScript来更新页面。
显然,由于您只更改了页面的一部分,因此最好不要将整个myPage.html从服务器发送回来,而只发送页面中发生更改的部分,或者发送如何更改页面的蓝图。
你可以在网上找到关于 AJAX 的好资源。我会给予一个链接到最有信誉的一个,但请随意找到一个或多个适合你的。
https://developer.mozilla.org/en-US/docs/AJAX
PS:既然你把问题标记为jQuery,你应该知道jQuery对 AJAX 有很好的支持。我推荐你(学习)使用它。
http://api.jquery.com/jQuery.ajax/
snz8szmq2#
你必须使用** AJAX **来做这些事情。阅读相关内容。
guicsvcw3#
你可以使用 AJAX 发送http请求的dropdownlist的改变事件保存在数据库这里是发送请求的示例代码
yxyvkwin4#
请使用 AJAX 。
构建一个函数,通过 AJAX 从服务器获取当前页面,然后将数据放入页面的同一区域,并用新内容替换旧内容。
您可以使用jQuery load
例如
注意,加载会自动替换内容
jw5wzhpr5#
您必须使用 AJAX ,例如同时使用PHP和jQuery;就像这样:
于飞:
JS:
使用这个基本脚本,您向脚本发送GET请求,并将响应放入
dynamicContentDiv
;请参考jQuery文档和 AJAX 资源以获得更高级的行为。)