ThinkPHP5 对html页面中的url传参操作

◆ 背景

  • 毕竟PHP开发的框架多数都会和前端页面嵌套使用,而不同的框架升级多少都会有所变化,这毕竟是其中的一个知识点吧,在我找不到方法前,考虑的是隐藏域提交“ID”,然后后台post处理取出此ID,再依次为依据进行后续操作…

框架:ThinkPHP5.1

  • 路由配置举例:【有参数的一种】
Route::any('cms/article/edit/:id','cms/article/edit');

◆ 操作

§. html 中嵌入方式

  • 这种情况,一般是 form表单的页面提交形式,直接在属性 "action" 中进行配置,此时可以将参数以数组参数的形式进行添加,如下:
 method="post" action="{:url('cms/article/edit',['id'=>$todayWordData.id,'tag'=>'test'])}"


  • 那么页面的显示效果如下:

要注意所生成URL中的参数变化,其与路由配置有关
ThinkPHP5 对html页面中的url传参操作_第1张图片

§. js 中嵌入方式

  • 这种情况下多数是绑定的点击事件,需要在 当前页面的 js 下配置数组参数
  • 可是使用js提供的替换函数replace(),举例如下
//菜单修改按钮的点击事件
function editNavMenu(id) {
     var postData = $(".form-opTodayWords").serialize();
     var toUrl = "{:url('cms/todayWord/edit',['id'=>'NMID'])}";
     toUrl = toUrl.replace('NMID',id)
     ToPostPopupsDeal(toUrl,postData);
 }

根据所给出的路由形式,本以为如下的方式可以成功,但是如此一来是无法替换其中的“NMID”的.

var toUrl = "{:url('cms/todayWord/edit/NMID')}";
toUrl = toUrl.replace('NMID',id)

你可能感兴趣的:(ThinkPHP)