直接帖代码:
//-------------------------------test.jsp------------------------------
<%@ page language="java" contentType="text/html; charset=gb2312"
import="java.util.*"%>
<html>
<head>
<title>change_test</title>
</head>
<%
Random random = new Random();
String rand=new String():
%>
<body>
<center>
<input type="button" value="change" onClick="alert(<%
rand="";
rand = String.valueOf(random.nextInt(10));
out.print(rand);
%>)" >
</center>
</body>
</html>我原本的意思是想单击一个按钮产生一个随机数,然后输出!
但是,为什么 每次刷新页面后 单击第一次按钮的时候能够产生随机数。
而后,再单击按钮的时候 却不能产生新的随机数。。
是不是因为JavaScript得运行机制有关?求各位大侠指点指点,,也可以直接帖上可以运行的代码。。
ps:其中变量rand一定要在<%%>中,也就是要输出jsp中定义的变量!!!先谢谢了
//-------------------------------test.jsp------------------------------
<%@ page language="java" contentType="text/html; charset=gb2312"
import="java.util.*"%>
<html>
<head>
<title>change_test</title>
</head>
<%
Random random = new Random();
String rand=new String():
%>
<body>
<center>
<input type="button" value="change" onClick="alert(<%
rand="";
rand = String.valueOf(random.nextInt(10));
out.print(rand);
%>)" >
</center>
</body>
</html>我原本的意思是想单击一个按钮产生一个随机数,然后输出!
但是,为什么 每次刷新页面后 单击第一次按钮的时候能够产生随机数。
而后,再单击按钮的时候 却不能产生新的随机数。。
是不是因为JavaScript得运行机制有关?求各位大侠指点指点,,也可以直接帖上可以运行的代码。。
ps:其中变量rand一定要在<%%>中,也就是要输出jsp中定义的变量!!!先谢谢了
解决方案 »
- js可以实现telnet客户端吗?
- 原来的web项目导入到Meclipse9.1,显示jquery-1.4.2.min.js文件有错误
- 帮忙看段简单代码,不执行。
- 请教 java js 如何 调用 快播播放器
- 请教关于菜单联动的问题,涉及到数据库的连接
- 字符串"{id:'123',bc:'44'}"如何转化为Object
- javascript的问题,急!
- 如何将js变量赋值c:set
- 怎么用层和表格做好在不同分辨率下定位的问题[灌水互入]
- 我在网页中加了个视频插件,却无法实现拖动,请各位高手用javascript解决!急!!
- syntaxhighlighter能不能只对指定的区域部分进行语法高亮?
- 技术贴:新浪博客里面的图片显示问题
你这种是利用服务器端的java代码生成随即数的,在jsp页面显示以后随即数已经生成。
所以你点击的时候就会是同一个数字,你可以刷新下再点击看看。数字应该不同了。
如果要无刷新的可以用ajax,当然js也可以生成随机数的。用Math下面的round方法<%@ page language="java" contentType="text/html; charset=gb2312"
import="java.util.*"%>
<html>
<head>
<title>change_test</title>
</head>
<%
Random random = new Random();
String rand=new String():
%>
<body>
<center>
<input type="button" value="change" onClick="window.reload();alert(<%
rand="";
rand = String.valueOf(random.nextInt(10));
out.print(rand);
%>)" >
</center>
</body>
</html>
window.reload();刷新下应该会重新生成一个随机数的
但楼主可能没有弄清楚客户端和服务器端的概念 一般情况下客户端无法直接调用服务器端程序然后显示 两者的程序运行的环境(姑且说成环境)不同,当然有特殊的情况是两者可以互通,例如用js控制iframe 从而发送请求至服务器端让其返回需要的数据,或者使用AJAX技术,这些都是客户端主动请求的情况,当然也有服务器端主动发信息至客户端的情况 这个是服务器推送技术 就不做详细介绍了
所以依你的写法 用js的onclick调用服务器的获得随机数程序 是行不通的 解决方法 一般会想到AJAX 当然诡异一点可以结合iframe来调用 呵呵
恩。确实是有关服务器,客户端的问题。但是,我要在客户端生成随机数我看了一篇关于JavaScript的文章,是说什么 “事件冒泡”的问题吧。因为我对JavaScript学的不多,所以看的一头雾水...
我的意思就是不要刷新页面,,单击按钮就可以刷新,,,一开始 我觉得JavaScript应该很好实现,,却不知道 卡住了,郁闷
当然理解还是有一个过程,想当初自己也并不是很了解JS和ASP的机制,而且编写的页面中编码都是混在一起,有时就会突发奇想让JS来直接控制ASP或者反过来 其实现在看来想法挺幼稚 呵呵 多写代码 多积累 个人JS感觉其实比服务端的程序更有意思