如果你能很好的理解我下面的一句话,那这些都不是问题了。
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的传值