当前位置:编程学习 > C#/ASP.NET >>

100分求一個JS(驗証時間)

前面我發過這個貼子﹐但是沒說清楚.

要求如下:
        上班時間﹕[  ] ~ [  ]  時數:[ ] 
        說明:[ ]代表TextBox﹐難得貼圖了 
         比如: 
        如果時間是12﹕20 則用數字1220代表
        上班時間﹕[0730] ~ [1200]  時數:[4.5] 
        上班時間﹕[0722] ~ [1200]  時數:[4.6]
        上班時間﹕[1800] ~ [2359]  時數:[5.9]


        3個TextBox得ID分別為:上班時間﹕[f_u_stime ] ~ [f_u_etime]  時數:[f_u_time] 
        
u_stim   char(4),
        u_etime  char(4),
        u_time   numeric(4, 1)


小時﹕必需驗証范圍0-23﹐分﹕0-59     就是輸入只能是0759,2359   不能是2460
然后再根據上下班時間求得一個小時數
會得大哥請貼上你們得完整代易做图﹐100分立即送上,在線等.
--------------------编程问答-------------------- 如果其它方式能實現也可以 --------------------编程问答-------------------- 不知道是要求一定要这样做还是你自己想的要这样做?
你不觉得你的这样挺麻烦的吗(至少我这样认为的)

直接用两个按钮不是更方便,用户使用也很简洁.
button1 上班签到 button2下班签退 点击后分别获取当前时间  在把两个时间相减不就得出上班时数!又简单又明了. --------------------编程问答-------------------- 我也想那么簡單得實現﹐可要求是這樣得.就是很麻煩﹐要不也不來這里問了. --------------------编程问答--------------------

var rule = /^(([0-1]{1}[0-9]{1})|(2[0-3]{1}))[0-5]{1}[0-9]{1}$/;
.....

计算时间就很简单了,自己做 --------------------编程问答-------------------- .......... --------------------编程问答-------------------- http://www.lokcore.com/avrilxu/article.asp?id=8
到这里去找 --------------------编程问答--------------------

<body>
    <form id="form1" runat="server">
    <div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Button ID="Button3" runat="server" OnClick="Button3_Click" Text="Button" />
</div>

    </form>
</body>

<script>
function pt()
{
    var star=document.getElementById(<%="'" + this.TextBox1.ClientID + "'"%>);
    if(star.value=="")
    {
        alert("1不能为空");
        star.focus(); 
        return false;   
    }
    var end=document.getElementById(<%="'" + this.TextBox2.ClientID + "'"%>);
    if(end.value=="")
    {
        alert("2不能为空");
        end.focus();    
        return false;
    }
    var patrn=/^[0-1][0-9][0-5][0-9]$|^2[0-3][0-5][0-9]$/;
if(!patrn.test(star.value)) 
{
   alert("1格式不正确!");
   star.focus();
   star.select();
  return false;
}
if(!patrn.test(end.value)) 
{
   alert("2格式不正确!");
   end.focus();
   end.select();
  return false;
}
return true;
}
</script>

//cs文件:
page_load中加:

Button3.Attributes.Add("onclick", "return pt();");

第3个文本框的值自己去算吧。。
--------------------编程问答-------------------- 4楼正解 
正则表达式
--------------------编程问答-------------------- 四楼写的简洁,七楼的写得完整.

帮顶一下算了. --------------------编程问答-------------------- var rule = /^(([0-1]{1}[0-9]{1})|(2[0-3]{1}))[0-5]{1}[0-9]{1}$/;
用正则表达式 --------------------编程问答-------------------- 感謝各位﹐弄完了給分 --------------------编程问答--------------------
我的button是控件﹐我把那段JS驗証引用﹐PAGELODE里面加的
f_u_stime1.Attributes.Add("onkeypress", "chkTime(this);");

f_u_stime1   textbox ID

那段引用代易做图為:
//hh/dd/mm時間檢測輸入
var beforecheck;
function chkTime(Object)
{
var ss = String.fromCharCode(event.keyCode)
var star =Object.value;
var reg =/^[0-1][0-9][0-5][0-9]$|^2[0-3][0-5][0-9]$/; 
 
if(!reg.test(star+ss))
{
      event.keyCode=0;
  //alert("格式不正确!");
       star.focus();
       star.select();
         return false;

}
else

{
    return true;
}
}
但是報錯﹕物件不支援此屬性或方法
能幫我解決下嗎? --------------------编程问答-------------------- mark --------------------编程问答-------------------- 截取字符串判断一下也可以。 --------------------编程问答-------------------- HOHO~現在就是在substring了
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,