我有一个显示项目列表的页面。页面用html,css,php和使用mysql db编码。
在该页面上,用户可以请求将其中一个项目添加到其特殊列表中。
我想在页面中执行此操作,而无需进行完整的页面刷新。因此,用户单击按钮进行添加,项目将添加到其列表中,并且按钮已更改,因此无法再次添加。
我是否使用ajax调用在页面后面运行代码然后刷新div?
或者是否有更好的方法来实现它。
如果用户已关闭js,我更喜欢可能的php选项,但不知道是否可以使用js来完成。
任何帮助表示感谢。
答案 0 :(得分:2)
如果您想要动态内容(更改页面而不刷新),您将不得不使用Javascript。要做你想要的,你可以通过Ajax调用PHP脚本,用新项目输出div的内容,然后根据该响应更改div。
答案 1 :(得分:0)
很多时候,当我实现这样的功能时,我会设置PHP将变量作为POST发送(如果JS禁用)并将我的ajax请求作为GET,这样我就可以使用单个PHP页面来处理'相同的'请求。使用AJAX时,我会让脚本回显一个特定的代码然后返回一个ajax响应句柄。
if(val == 'OK') {
//in event of success, perhaps you want to hide the original form and show a success message
} else {
//do something like unhide a hidden div to display an error
}
答案 2 :(得分:0)
如果关闭JavaScript,则必须重新加载页面。在你的情况下,jQuery可能非常方便,只需重写你需要重写的元素。服务器发送一个简单的json。使用PHP框架也可能是一个好主意,因为你问的方式似乎(尊重,并且不想冒犯),你没有使用任何框架,并且可能会遇到崩溃使你的脚本容易受到攻击(例如sql注入) )
如果您的访问者未启用JavaScript并且您仍想提供服务,那么您必须重新加载页面。首先检查是否值得做,谁是您的客户/访客,他们使用什么浏览器,...这样的问题可以帮助您设计您的页面/应用程序。