您的位置:首页 > Web前端 > JavaScript

ExtJs 4.x 学习小记:Ext中访问Jsp中的变量

2014-03-25 13:20 316 查看
在javascript中访问Jsp变量时,一般就是通过 <%=变量名%> 访问,常用方法如下,不同的方法会产生不同的效果。

第一种,脚本代码和Jsp文件在一起,也就是脚本写在Jsp文件中,这种方法访问正常。

<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<%request.setCharacterEncoding("utf-8"); %>
<%
String optype=request.getParameter("optype"); //获得URL传递过来的参数
session.setAttribute("optype", optype); //保存到session
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css"
href="././js/extjs/resources/css/ext-all.css">
<script type="text/javascript" src="././js/extjs/bootstrap.js"></script>
<script type="text/javascript" src="././js/extjs/locale/ext-lang-zh_CN.js"></script>
</head>
<body>
<script type="text/javascript" src="././js/cataloginfo.js"></script>
<script type="text/javascript">
var optype = <%=optype%>;
alert('optype');
</script>
<div id='info'></div>
</body>
</html>

第二种,Jsp中引入一个js文件,在这个js文件中需要访问Jsp中的变量,如果还是直接通过<%=optype%>方式就不能正常访问了,解决方法可以在Jsp中,声明一个脚本变量,js文件中访问这个脚本变量,即访问第一种情况中的 var optype,如下:
<html>
<%request.setCharacterEncoding("utf-8"); %>
<%
String optype=request.getParameter("optype"); //获得URL传递过来的参数
session.setAttribute("optype", optype); //保存到session
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css"
href="././js/extjs/resources/css/ext-all.css">
<script type="text/javascript" src="././js/extjs/bootstrap.js"></script>
<script type="text/javascript" src="././js/extjs/locale/ext-lang-zh_CN.js"></script>
</head>
<body>
<script type="text/javascript" src="././js/cataloginfo.js"></script>
<script type="text/javascript">
var optype = <%=optype%>;
</script>
<div id='info'></div>
</body>
</html>

上面包含了cataloginfo.js脚本文件
Ext.onReady(function(){
var v = optype; //访问JSP文件中定义的脚本变量
var infoForm = Ext.create('Ext.form.Panel', {
......
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: