【发布时间】:2015-08-09 23:14:16
【问题描述】:
我想将 mysql 字符串存储在 javascript 数组变量中。我在服务器端使用jsp。
我尝试了三种方式。这三个都不工作。需要一些帮助。
尝试 1:
<script>
var name = [];
<%
st=con.prepareStatement("select name from company");
rs=st.executeQuery();
while(rs.next()){
String s = rs.getString(1);
%>
name.push(<%=s%>);
<%
}
%>
</script>
尝试 2:
<script>
var name = [];
<%
st=con.prepareStatement("select name from company");
rs=st.executeQuery();
while(rs.next()){
%>
name.push(<%=rs.getString(1)%>);
<%
}
%>
</script>
尝试 3:
<script>
var name = [];
<%
st=con.prepareStatement("select name from company");
rs=st.executeQuery();
while(rs.next()){
%>
name.push(<%out.print(rs.getString(1));%>);
<%
}
%>
</script>
所有三个尝试都显示相同的结果和处理后的错误。
解释代码:
<script>
var name = [];
name.push(tcs);
name.push(wipro);
</script>
错误:
ReferenceError: tcs is not defined
【问题讨论】:
-
查看您生成的代码。为什么你认为这应该有效?你需要在输出 JS 之前转义你的字符串。
-
@SLaks:找不到你。我是菜鸟。
-
尝试加引号,
name.push("<%=s%>") -
name.push(tcs);不是有效的 Javascript(您没有tcs变量) -
如果名称包含
"或反斜杠怎么办?
标签: javascript mysql jsp