jsp中,javascript代码怎么控制java代码呢?

网络科技 2008-05-03 11:41:42

我们知道,一加载jsp界面,就自动运行了java代码,即<%...%>这里面的代码,但有时,我们需要特定的条件运行<%...%>,而不是一进入jsp就运行,怎么实现呢?
一般人想过用javascript来控制,我试了一下,根本控制不到呀,如如下代码:

<SCRIPT language="javascript">
function f1(id)
{
<%
String a= "";
%>

if(id== "001")
{
<%a = "001";%>
}
}

</SCRIPT>

说明:我本意只想当id=="001"的时候才给a赋值"001",可我id根本就不等于001,也给a赋值了001,怎么办?jsp中,javascript真的控制不到java么?请高手指教!
...全文
205 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
网络科技 2008-05-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 guozhanxian 的回复:]
你的思路就有问题。JSP是在服务器端执行的,返回给客户端的是HTML的代码和你的JS。你的JS在客户端浏览器中由浏览器来解释执行。也就是说JSP在服务器端先执行,也就是执行其中的Java代码,生成HTML+JS反给客户端浏览器。再由客户端浏览器来执行其中的JS代码。
[/Quote]

确实如此,js是不可以控制java的,要实现类似的功能,如楼上大虾们所言,只能学dwr或ajax了,这几天简单学了一下dwr,收获挺大的,本贴就此结了吧,最后感谢诸位的热情帮助的啦.
网络科技 2008-05-03
  • 打赏
  • 举报
回复

既然一加载jsp就自动运行了<%...%>,则还没用ajax时, <%a = "001";%> 就运行了,且a已经等于001了呀,如果我刚开始就不希望运行<%a = "001";%>怎么办?既然js不能控制java,有没有能控制的呢?或者有什么新技术可以解决这个难道呢?
会Java的蝈蝈 2008-05-03
  • 打赏
  • 举报
回复
你的思路就有问题。JSP是在服务器端执行的,返回给客户端的是HTML的代码和你的JS。你的JS在客户端浏览器中由浏览器来解释执行。也就是说JSP在服务器端先执行,也就是执行其中的Java代码,生成HTML+JS反给客户端浏览器。再由客户端浏览器来执行其中的JS代码。
Shine_Panda 2008-05-03
  • 打赏
  • 举报
回复
我测试了一下你上面的代码 在查看源文件的时候

function f1(id)
{


if(id== "001")
{

}
}

这个样子的了。
因为jsp 在转化为 servlet后 <%%>中的东西会被放到 service();方法中去。 而你的 javascript肯定不会。
所以 你的 js就控制不了你的 java 代码了。
如果非得要这么做 Ajax 可以很好的 处理这类问题。

Zianed 2008-05-03
  • 打赏
  • 举报
回复
dwr

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧