我想使用jsp表达式标签将java字符串变量传递给javascript函数参数。以下是我的jsp页面。
First.jsp
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script>
function stringGenerate(str){
var x = document.getElementsByTagName("input");
x[0].value = str;
}
function numberGenerate(num){
var x = document.getElementsByTagName("input");
x[1].value = num;
}
</script>
</head>
<body>
<%
String num ="1234567890";
String str = "abcdefghij";
%>
<input type="text" name="string" readonly="readonly"/>
<input type="text" name="number" readonly="readonly"/><br/><br/>
<input type="button" value="String Generate" onclick= "stringGenerate(<%=str %>)" />
<input type="button" value="Number Generate" onclick= "numberGenerate(<%=num %>)" />
</body>
</html>
当我单击具有“ Number Generate”值的按钮时,那么num变量值(1234567890)将显示在文本框上(名称=“ number”),但是当我单击具有值“ String Generate”的按钮时,则有在相应的文本框(名称=“ string”)上没有任何显示。这里num和str都是字符串类型的变量,但是为什么在文本框中仅显示num变量值,为什么不显示str变量值?
最佳答案
在HTML中使用字符串时,请尝试使用单引号'
:
完整代码: