1. 程式人生 > >jsp頁面間跳轉,獲取上一頁面表單內的值

jsp頁面間跳轉,獲取上一頁面表單內的值

微笑筆記微笑

一、在頁面間傳遞資料時的方法:

切記text框的name屬性,只有設定name屬性,下一個頁面的request才可以獲取資料.id屬性不行,因為id屬性主要是為了JavaScript操作

1.

通過<a href="judge.jsp?name=<%=user.getName() %>&pass=<%=user.getPass() %> " />此方法安全性不好,可以用於傳遞不涉及安全限制的資料;但是不侷限於該頁面是否有form,並且也不用跳轉動作,多省事啊!!!

2.

通過form傳值,form的method用post安全性好,並且不易於出現亂碼;

而get安全性不好,適合傳遞少量資料,並且易出現亂碼;

二、下面講亂碼的出現情況及處理方法:

1.

request.getParameter("name");出現亂碼:使用request之前先設定request的編碼方式:request.setCharacterEncoding("utf-8");

2.

獲取form資料出現亂碼:將form的method改為post;

3.

修改頁面的字符集:在head標籤之間新增<meta charset="utf-8" />

四、JavaScript驗證表單

1.

提交表單時驗證表單內容,form格式如下

<form name="form" method="post" onsubmit="return check()">
    <input type="text" name="name" id="name"/>
    <input type="submit" value="提交" />
</form>

切記:(1)寫著return;(2)check()內無需加引數;

驗證JavaScript格式如下:

<script language="javascript">
function check() {
    name=document.getElementById("name");
    if(name!==""){
        return true;
    } else {
        return false;
    }
}
</script>


2.

判斷表單內text內容是否為空,用=="",而不是==null,否則驗證無效;

最後都用上,如此:

String name = getElementById("name");
if (name != null && name != "") {
    //do something
}


在<%%>中java指令碼段判斷亦是如此;