在H5中,一個頁面的跳轉,一般分為三種方式
- window.location.href = _url;
- a標簽
- form表單post跳轉
對于方式1,方式2,如果需要傳遞參數,只能通過將參數添加到跳轉的地址中,眾所周知,對于一些要緊的參數,在地址中是非常不安全的,而且需要傳遞多個參數,放在鏈接中傳遞也不是很好。所以需要采用form表單提交的方式進行頁面跳轉。
但是在多數頁面,不需要顯式的添加form表單元素,此時有需要隱式的傳遞多個參數和要緊參數。則需要自己構建隱式的form表單,并且將需要傳遞的參數作為表單元素中input
的value
值。
實現方式 - 傳值
具體的實現如下
// 頁面之間post跳轉
function forward(_url, _para) {
jQuery("#div_global_form").html("");
var html = "<form id='action_form' action='"+_url+"' method='post'>";
if(_para != null){//參數
for(var p in _para){
html += "<input type='hidden' name='"+p+"' value='"+_para[p]+"'>";
}
}
html += "</form>";
jQuery("#div_global_form").html(html);
jQuery("#action_form").submit();
jQuery("#div_global_form").html("");
}
如上,div_global_form
為全集的定義的一個html標簽元素。我們會在div_global_form
標簽元素中生成一個form隱藏域。并且action為傳遞進來的_url
。
取值
在跳轉到指定頁面后,需要獲取傳遞過來的值。
<script type="text/javascript">
var param = "${param.alreadyImages}";
</script>
使用如上方式,就可以獲取前一個頁面傳遞過來的參數。其中${}
為EL表達式。為什么一定使用param
,則是"王八的屁股--規定",所以不需要糾結。
之上,是對最近最近HTML和JSP的學習細節總結。
喜歡請隨意
圖片發自簡書App