| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 578 人关注过本帖
标题:输入框输入是“奇数”的就相加,输入总和
只看楼主 加入收藏
anjincheng
Rank: 2
等 级:论坛游民
威 望:5
帖 子:728
专家分:31
注 册:2005-7-27
结帖率:68.57%
收藏
已结贴  问题点数:20 回复次数:8 
输入框输入是“奇数”的就相加,输入总和
各老师:
    在5个输入框(名称:INPUT1,INPUT2,INPUT3,INPUT4,INPUT5)中随机输入5个数,当输入的是奇数时,就累加,最后输出总和。怎么实现?谢谢!
2011-04-22 16:53
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:20 
循环外加mod语句
例如
程序代码:
<html>
<head>
<title>奇数循环相加</title>
<script language="javascript">
//表单提交
function form1_Submit()
{
    document.form1.action=self.location.href;//提交到当前页
    document.form1.target="_self";//提交到当前框架
    document.form1.submit();//提交表单
}
function Page_Load()
{
<%
    Dim i,IsInt,Total,txtCount
    IsInt=True  
    Total=0
    Function IsInteger(val)
         On Error Resume Next
         IF VarType(CInt(Val))<>2 Then
             IsInteger=False
         Else
             IsInteger=True        
         End IF
    End Function
    txtCount=Request.Form("txt_Num").Count
    IF Request.Form("IsSubmit")="True" Then
         '第一次循环验证是否都是整数
         For i=1 To txtCount
               IF IsInteger(Request.Form("txt_Num")(i))=False Then
                   IsInt=False              
               End IF
         Next
         IF IsInt=False Then
             Response.Write "alert('不可以输入非整数');"
        
         Else
            '第二次循环累加奇数和
            For i=1 To txtCount
                 IF CInt(Request.Form("txt_Num")(i)) Mod 2<>0 Then
                     Total=Total+CInt(Request.Form("txt_Num")(i))                
                 End IF
            Next
            Response.Write "alert('奇数和为"&Total&"');"
         End IF
    End IF
%>
}
</script>
</head>
<body onload="Page_Load();">
<form name="form1" method="post" >
<%
    Dim t,txtNum'声明变量
    txtNum=5'文本框个数
    Response.Write "请输入"&txtNum&"个整数</BR>"
    '循环输出文本框
    For t=0 To txtNum
          Response.Write "<input type=text name=txt_Num /></br>"
    Next
%>
<input type="hidden" name="IsSubmit" value="True" />
<input type="button" name="Submit" onClick="form1_Submit();" value="提交" />
</form>
</body>
</html>


[ 本帖最后由 yms123 于 2011-4-22 21:42 编辑 ]
2011-04-22 20:59
anjincheng
Rank: 2
等 级:论坛游民
威 望:5
帖 子:728
专家分:31
注 册:2005-7-27
收藏
得分:0 
感谢老师

我是农家的孩子,我有农家孩子的本色!
2011-04-23 23:19
anjincheng
Rank: 2
等 级:论坛游民
威 望:5
帖 子:728
专家分:31
注 册:2005-7-27
收藏
得分:0 
老师:您好!
      我测试了一下,如果把5个输入框的名称都写成“txt_Num”是可以实现的,但我把5个输入框的名称改为:txt_Num1,txt_Num2,txt_Num3,txt_Num4,txt_Num5 就实现不了啦!!
//以下代码可以实现
================================================================
For t=0 To txtNum
          Response.Write "<input type=text name=txt_Num /></br>"             可以实现
Next
================================================================
<input type=text name=txt_Num />   
<input type=text name=txt_Num />  
<input type=text name=txt_Num />                                             可以实现
<input type=text name=txt_Num />  
<input type=text name=txt_Num />           
================================================================
<input type=text name=txt_Num1 />   
<input type=text name=txt_Num2 />  
<input type=text name=txt_Num3 />                                            不能实现
<input type=text name=txt_Num4 />  
<input type=text name=txt_Num5 />           
================================================================
说明:输入框名称:txt_Num1,txt_Num2,txt_Num3,txt_Num4,txt_Num5 已确定,不能更改(也不能用FOR循环来实现输入框的输出)!!



我是农家的孩子,我有农家孩子的本色!
2011-04-24 02:19
anjincheng
Rank: 2
等 级:论坛游民
威 望:5
帖 子:728
专家分:31
注 册:2005-7-27
收藏
得分:0 
老师们,帮帮忙~~~感谢了~~~

我是农家的孩子,我有农家孩子的本色!
2011-04-24 21:43
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
以下是引用anjincheng在2011-4-24 02:19:18的发言:

老师:您好!
      我测试了一下,如果把5个输入框的名称都写成“txt_Num”是可以实现的,但我把5个输入框的名称改为:txt_Num1,txt_Num2,txt_Num3,txt_Num4,txt_Num5 就实现不了啦!!
//以下代码可以实现
================================================================
For t=0 To txtNum
          Response.Write "
"             可以实现
Next
================================================================
   
  
                                             可以实现
  
           
================================================================
   
  
                                            不能实现
  
           
================================================================
说明:输入框名称:txt_Num1,txt_Num2,txt_Num3,txt_Num4,txt_Num5 已确定,不能更改(也不能用FOR循环来实现输入框的输出)!!
你这种方法只能是5个输入框,多余5个就得改代码,我写的哪个就改一个数字即可,要试着学会使用控件数组或数组,数组这个概念很重要,有时能节省不少代码
2011-04-25 14:46
anjincheng
Rank: 2
等 级:论坛游民
威 望:5
帖 子:728
专家分:31
注 册:2005-7-27
收藏
得分:0 
非常感谢老师:但我就很郁闷,以下情况为什么实现不了??
================================================
<html>
<head>
<title>奇数循环相加</title>
<script language="javascript">
//表单提交
function form1_Submit()
{
    document.form1.action=self.location.href;//提交到当前页
    document.form1.submit();//提交表单
}
</script>
<%
    Dim i,Total,txtCount
    Total=0
    txtCount=Request.Form("txt_Num").Count

            For i=1 To txtCount
                 IF CInt(Request.Form("txt_Num")(i)) Mod 2<>0 Then
                     Total=Total+CInt(Request.Form("txt_Num")(i))               
                 End IF
            Next
            Response.Write "alert('奇数和为"&Total&"');"

%>
</head>
<form name="form1" method="post" >
<input type=text name=txt_Num1>
<input type=text name=txt_Num2>
<input type=text name=txt_Num3>
<input type=text name=txt_Num4>
<input type=text name=txt_Num5>
<input type='button' name='Submit' onClick='form1_Submit();' value="提交" />
</form>
</body>
</html>

我是农家的孩子,我有农家孩子的本色!
2011-04-25 15:07
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
你那种不是控件数组,只有name一致的情况下才能用我写的代码,你那种很大的一个问题,你如何知道页面上一定是5个文本框呢?
写程序要从程序的角度去考虑问题。

[ 本帖最后由 yms123 于 2011-4-26 12:46 编辑 ]
2011-04-26 12:44
zhuiis
Rank: 4
等 级:业余侠客
威 望:1
帖 子:201
专家分:286
注 册:2008-11-8
收藏
得分:0 
回复 楼主 anjincheng
Function Total(Str1)
dim Tmp_Num
if trim(Str1)="" then exit function
for i=0 to ubound(split(str1,","))
Tmp_Num=split(str1,",")(i)
if isnumeric(Tmp_Num)=true then
 if tmp_Num mod 2<>0 then
 Total=int(Total)+int(Tmp_Num)
 end if
end if
next
response.write total
End Function

if request("Submit")="提交" then
call Total(request("a1")& "," & request("a2") &"," & request("a3") & "," & request("a4") & "," & request("a5"))
end if
2011-04-26 22:34
快速回复:输入框输入是“奇数”的就相加,输入总和
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022947 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved