本人做了一个页面,用的smarty模板。数据都在index.php中读出来了,然后显示在index.tpl文件中。但是tpl文件有个按钮,是要把数据按规定排序的。例如,我默认的是index.php中从数据库中读出来顺序是1,2,3,4。那么tpl文件中有个按钮,点击之后页面显示的就是4,3,2,1。目前就是想知道,怎么把那个点击事件传送到index.php,然后index.php按规定读出数据之后,再显示到tpl文件中。
我在tpl文件中写了一个点击事件,想用ajax传递,抓包显示的,index.php也读出了数据,但是当前tpl文件显示的还是之前的。$("#sortbypop").click(function(){
var url = document.URL;
$.get(url,{action:"get",sort:"popsort"},function(data,textStatus){
});
});
这是那段ajax代码。请问要该怎么做?
我在tpl文件中写了一个点击事件,想用ajax传递,抓包显示的,index.php也读出了数据,但是当前tpl文件显示的还是之前的。$("#sortbypop").click(function(){
var url = document.URL;
$.get(url,{action:"get",sort:"popsort"},function(data,textStatus){
});
});
这是那段ajax代码。请问要该怎么做?
具体要做些什么事情,要取决于你设计的场景
是这样,因为我不需要执行什么,我想做的就是在index.tpl中提交一个参数,让后台php程序获取之后重新读取下数据库数据,然后再显示出来。流程相当于 tpl-->提交参数--->php获取重新读数据--->tpl中更新显示 就是这个功能。关键是我的数据是在index.php中读出来的,然后display(index.tpl)了。现在想做的就是,tpl往回传参数,php重新读,再重新传数据给tpl。我已经被绕晕了。
data 显然是返回的数据,怎么展示这个数据,与你的设计有关。别人如何知道?
php 读出了一行数据,然后显示到了模板中。现在模板有个按钮功能,要求php重新把数据排序,然后再显示到模板。具体流程就是前端页面 tpl-->php-->tpl这样。现在我做的测试。alert了下回调函数里的data,显示的是新数据html完整代码。就是说,回调函数返回的数据中,连php文件中的 display(tpl)文件也返回了。所以返回的是一整个html代码。但是当前的tpl页面没有变化。我想做的功能就是,点击下,然后中间显示的图片顺序变化了。不点击,就是默认的顺序。
于是你用 data 替换掉目标区域的内容不就完事了?
如果你要整体刷新,就不要用 ajax