结合smarty,获取$_GET传递过来的参数并进行重新索取和排列,以便传递给分页函数




/**
* 获取$_GET传递过来的参数并进行重新索取和排列,以便传递给分页函数
* smartyArgDiv('loadMain','admin_main_mem',array('page'=>'1','uid'=>'2','dd'=>3));
* retrun loadMain('admin_main_mem',page=1&uid=2&dd=3')
*
* @param string $func 传递给模版的JS函数
* @param string $tarPhp AJAX提交分页的目标页面(PHP处理页面)
* @param array $args是传递给PHP处理页面的参数
* @return string
*/
function smartyArgDiv($func,$tarPhp,$args){
$argDiv_str = "{$func}('{$tarPhp}','";
if(is_array($args)){
/*判断数组最后一个元素是否为空,如果为空就把数组弹出*/
while(end($args)==''){
  array_pop($args);
}
$arg = count($args);
foreach ($args as $key => $value){
  static $i=1;
  /*判断数组是否有空值元素,有就忽略*/
  if($value!=''){
  if($i==$arg){
  $argDiv_str .= $key."=".$value;
  }else{
  $argDiv_str .= $key."=".$value."&";
  }
  }
  $i++;
}
}
return $argDiv_str .= "')";
}


js程序片段:

//这里我通过arguments灵活的处理了别的页面提交过来的参数,以不变应万变,也就是说,可以对这个函数进行扩展,只需要对arguments进行判断就可以了
function loadMain(){
/*变换辅助容器的值*/
document.getElementById('helper').value = arguments[0];
if(arguments[0]=='admin_main_sys'){
document.getElementById('nv_left').style.display='none';
}else{
document.getElementById('nv_left').style.display='block';
document.getElementById('searchs').style.display='block';
}
var url = "../admin/"+arguments[0]+".php";
//判断是否有第二个参数
if(typeof(arguments[1])!='undefined'){
url += "?"+arguments[1];
}
ajax=createRequest();
ajax.onreadystatechange = loadAction;
ajax.open("GET",url,true);
ajax.send(null);
}



TPL模版片段:


<{foreach name=users key=ukey item=uid from=$uids}>
  <tr style="background-color:<{cycle values='#fff,#dee5ba'}>;font-weight:bold">
  <td><input type="checkbox" name="uids[]" value="<{$ukey}>"></td>
  <{foreach key=key name=user item=uid from=$uid}>
  <td class="<{if $key!=uid}>user_t<{/if}>">
    <{if $key==group}>
    <{if $uid==0}>
    普通会员
    <{else}>
    管理员
    <{/if}>
    <{else}>
    <{$uid}>
    <{/if}>
  </td>
  <{/foreach}>
  </tr>
<{/foreach}>



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值