ThinkPHP5 對html頁面中的url傳參操作
阿新 • • 發佈:2018-12-31
◆ 背景
- 畢竟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中的引數變化,其與路由配置有關
§. 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)