asp javascript值的互相傳遞方法_應用技巧
來源:互聯網
上載者:User
如果你能很好的理解我下面的一句話,那這些都不是問題了。
asp是伺服器端語言,它的作用是動態產生用戶端瀏覽器所能識別的html css javascript 等...
那麼asp 怎麼傳值給js呢?
動態去產生js就好啦~~ 我們是怎麼產生html的?
不是這樣嗎?
程式碼
<table>
<%do while not rs.eof%>
<tr><td>
<a href=<%=rs("id")%>><%=rs("name")%></a>
</td></tr>
<%rs.movenext
loop%>
</table>
怎麼產生的name值? <%=rs("name")%> 那麼怎麼產生js裡的值呢?
比如一個js變數js_name 要得到asp裡的變數asp_name的值
去產生啊
<script>
js_name=<%=asp_name%>
</script>
和產生html沒有區別,同樣的,
css也可以產生 vbscript vml 甚至xml 都可以去動態產生,和產生html沒有區別。
如果你理解了上面的話,那asp傳值給js就沒問題了。
下面說js傳值給asp
html怎麼傳值給asp的? 常用兩種方法是form提交和 url後跟的尾碼去傳值
js也一樣, form 提交 url尾碼
舉例如
form提交,先將js的變數賦值給某個input
<script>
document.form1.inputX.value=js_name
</script>
然後form1.submit(),把表單提交
舉例如
url傳值,
<script>
window.open("www.blueidea.com/index.asp?asp_name="+js_name)
</script>
還是那句話,和html原理一樣,因為js/html都是用戶端的東西
還有一種方法,可以讓js-asp互相傳值,那就是通過cookie
asp裡可以 設定一個cookie -> a1=111
js裡得cookie的值,就可以用js裡的 document.cookie 去得到所有的cookie值
然後通過適當的截取,就能得到a1的值為111
同樣 js 裡去設定a1=111,asp裡也能讀到這個cookie的正確的值
以上:
同樣適用於asp/jsp/php/....所有伺服器端語言 同 js/vbs的傳值