1,解决js向jsp传值
使用ajax技术,从html.html页面传递到a.jsp页面中
html.html
<html>
<head>
<script src="clienthint.js"></script>
</head>
<body>
<script>
var xmlHttp
function showHint(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="";
return;
}
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("您的浏览器不支持AJAX!");
return;
}
var url="a.jsp";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged()
{
if (xmlHttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
</script>
<form>
First Name:<input type="text" id="txt1" onKeyUp="showHint(this.value)" />
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>
a.jsp
<%
String name=request.getParameter("q");
out.print(name);
%>
2,jsp 向js中传值很简单
<%
String try="abc";
%>
<script>
var try="<%=try%>";
alert(try);
</script>
传递数组:
<%for(int j=0;j <wall.length;j++){%>
wall[<%=j%>]=new Array();
wall[ <%=j%> ][0]= parseFloat(" <%=wall[j][0]%> ");
wall[ <%=j%> ][1]= parseFloat(" <%=wall[j][1]%> ");
<% } %>