请问以下几个问题?

GradeOne 2004-10-11 10:34:51
1.javascript的文本域在表单提交时如何将所填的文本限制为数字,怎么与数字比较?
2.javascript的变量如何在jsp中与java变量交互?
3.怎么从一个数组int IDs[]=new int[4]的4个变量中随机的选出3个变量来?


任意一个答对就给分
...全文
33 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
边城狂人 2004-10-11
首先复制一个数组(如果不需要保留原数组,可以省略这一步)
然后,在范围内,如4,随便选择一个index
将这个 index 上的值和位于0的那个交换

将范围缩小1,即4-1=3
再随机取一个index,将这个index + 1 (目的是迈过0,因为0已经是选择好的数了)
将这个 index 上的值和位于 1 的那个交换

如果还需要选择,
再将范围缩小1,即3-1=2
再随机取一个index,将这个index + 2 (目的是迈过0和1,因为这两个位置的已经是选择好的数了)
将这个 index 上的值和位于 2 的那个交换

看出来规律了吧 :D
回复
边城狂人 2004-10-11
1. 两个方法:
1) 在输入的时候,在 Keydown 事件中进行判断,不是数字就不允许输入

2) 在提交之前,对文本内容进行检查,可以用如下函数
function isnumber(str)

{

var number_chars = "1234567890";

var i;

for (i=0;i<str.length;i++)

{

if (number_chars.indexOf(str.charAt(i))==-1) return false;

}

return true;

}

回复
GradeOne 2004-10-11
谢谢
那如果要产生2个变量呢
回复
边城狂人 2004-10-11
2. javascript 是客户端脚本,JSP 是服务器端程序
而且 javascript 和 Java 不是同一种语言,所以无法进行变量交互
不过你可以使用传递参数的形式

JSP 的变量要传给 javascript,只需要在javascript代码中嵌入 <%= ? %>这样的JSP标记即可

<%
int a = 10;
%>
<script>
var x = <%= a %>
</script>

如果要把 JavaScript 的变量传递给 JSP,需要通过 FORM 或者 URL 中的参数来进行传递。在JSP中用 request.getParameter 等方法取得。这个和一般的数据提交是一个道理,就不多说了。
回复
边城狂人 2004-10-11
3. 产生一个随机整数,范围在 [0, 4)
然后从0到3循环,只要index 不等于那个随机数的,就选出来
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告