protected void BtnRequest_Clich(object sender, EventArgs e)

{

  lblMsg.Text= " " ;

  lblfmsg.Text= " " ;

TxtEmpID.Text=Coeno.Utility.String.CleanUpInput(TxtEmpID.Text);            --Coeno.Utility命名空间,String类名,CleanUpInput方法名

TxtVocMemo.Text = Coeno.Utility.String.CleanUpInput(TxtVocMemo.Text);

  if (TxtVocMemo.Text.Length>100)

  {

    lblMsg.Text= " 原因不能大于100个字符!!" ;

         lblMsg.ForeColor=System.Drawing.Color.Red ;                              --字体颜色

    lblfmsg.Text= " 原因不能大于100个字符" ;

    lblfmsg.ForeColor = System.Drawing.Color.Red ;

    return ;

  }

TxtEmpID.Text = Coeno.Utility.String.CleanUpInput(TxtEmpID.Text.Trim().ToUpper());
        TxtAgeEmpID.Text = Coeno.Utility.String.CleanUpInput(TxtAgeEmpID.Text.Trim().ToUpper());

#region 對於頁面必要欄位是否填寫正確的檢查

  if ( string.IsNullOrEmpty(TxtFormID.Text))

  {

      lblMsg.Text= " 请先申请一张新表单编号!!" ;

         lblMsg.ForeColor=System.Drawing.Color.Red ;                              --字体颜色

    lblfmsg.Text= " 请先申请一张新表单编号!!" ;

    lblfmsg.ForeColor = System.Drawing.Color.Red ;

    return ;

     }

   if (!string.IsNullOrEmpty(TxtAgeEmpID.Text)) &&(TxtAgeEmpID.Text == TxtEmpID.Text))

{

       lblMsg.Text= " 代理人工号不可与申请者一致!!" ;

          lblMsg.ForeColor=System.Drawing.Color.Red ;                              --字体颜色

     lblfmsg.Text= " 代理人工号不可与申请者一致!!" ;

     lblfmsg.ForeColor = System.Drawing.Color.Red ;

     return ;

      }

   if (string.IsNullOrEmpty(DropDutyCode.SelectedValue))

      {  

      lblMsg.Text= " 请选择申请者正确的【上下班时间】!!" ;

lblMsg.ForeColor=System.Drawing.Color.Red ;                              --字体颜色

     lblfmsg.Text = "請選擇請假者正確的【上下班時間】!!!" ;
               lblfmsg.ForeColor = System.Drawing.Color.Red;
               return;

   }

if (string.IsNullOrEmpty(TxtTotalHour.Value)) || TxtTotalHour.Value == "0" )

    {

     lblMsg.Text= " 请正确填写申请时间信息!!" ;

        lblMsg.ForeColor=System.Drawing.Color.Red ;

        lblfmsg.Text= " 请正确填写申请时间信息!!" ;

        lblfmsg.ForeColor=System.Drawing.Color .Red ;

        Return;

     }

System.DateTime OutDatetime;

    if (string.IsNullOrEmpty(TxtVocSTime.Text))

   {

     lblMsg.Text= "开始时间不能为空!! " ;

     lblMsg.ForeColor= System.Drawing.Color.Red;

     lblfmsg.Text= "开始时间不能为空! !" ;

     lblfmsg.ForeColor = System.Drawing.Color.Red

     return;

   }

else

   {

         if (!System.DateTime.TryParse(TxtVocSTime.Text, out OutDatetime))   --输入的开始时间与系统时间格式不同

      {

        lblMsg.Text = "开始時間有效格式應為(yyyy/MM/dd)!!!" ;

lblMsg.ForeColor = System.Drawing.Color.Red;

        lblfmsg.Text = "开始時間有效格式應為(yyyy/MM/dd)!" ;

        lblfmsg.ForeColor = System.Drawing.Color.Red;

        return;

       }

          if (!IsDate(TxtVocEtime.Text))

       {

        lblMsg.Text= " 结束时间有效格式应为(yyyy/MM/dd)! ! !" ;

        lblMsg.ForeColor=System.Drawing.Color.Red;

        lblfmsg.Text= " 结束时间有效格式应为(yyyy/MM/dd)!" ;

        lblfmsg.ForeColor=System.Drawing.Color.Red ;

        Return;

       }

      }

if (string.IsNullOrEmpty(TxtVocSHour.Value))

   {

      lblMsg.Text= " 开始时间不能为空!!" ;

      lblMsg.ForeColor=System.Drawing.Color.Red ;

      lblfmsg.Text= " 开始时间不能为空!!" ;

      lblfmsg.ForeColor=System.Drawing.Color.Red ;

         Return;

      }

      if (string.IsNullOrEmpty(TxtVocSMin.Value))

   {

      lblMsg.Text= " 开始时间不能为空!!" ;

      lblMsg.ForeColor=System.Drawing.Color.Red ;

      lblfmsg.Text= " 开始时间不能为空!!" ;

      lblfmsg.ForeColor=System.Drawing.Color.Red ;

         Return;

      }

      if (gvNewBody.Rows.Count<1)

   {

      lblMsg.Text= " 请点【计算】拆分时间段!!" ;

      lblMsg.ForeColor=System.Drawing.Color.Red ;

      lblfmsg.Text= " 请点击【计算】拆分时间段!!" ;

      lblfmsg.ForeColor=System.Drawing.Color.Red ;

      return;

      }

   else

    {

      for (int t =0; t<gvNewBody.Rows.Count ; t++)

           {

        double vhou =0;

        if (!double.TryParse(( (TextBox)gvNewBody.Rows[t] .FindControl( "txtNewBodyVocaHours " ) ).Text.ToString(),out vhou  ))

        {

          lblMsg.Text= " 时数格式错误!!" ;

          lblMsg.ForeColor=System.Drawing.Color.Red ;

          lblfmsg.Text= " 时数格式错误" ;

          lblfmsg.ForeColor=System.Drawing.Color.Red ;

            return ;

        }

      }

    }

#endregion

  //检查申请时数是否符合标准

  double totalhours = 0;

  string v_msg=string.Empty ;

  if (!double.TryParse(TxtTotalHours.value,out totalhours))   --TxtTotalHours.value的值与输出的totalhours样式不同

  {

    lblMsg.Text= " 总时数格式错误" ;

      lblMsg.ForeColor= System.Drawing.Color.Red;

    lblfmsg.Text= "总时数格式错误 " ;

         lblfmsg.ForeColor=System.Drawing.Color.Red;

    return;

  }

if (!CheckSmallestUnit(totalhours,out v_msg))                                                  --判斷請假單位不为空

 {

    lblMsg.Text=v_msg;

    lblMsg.ForeColor= System.Drawing.Color.Red;

    lblfmsg.ForeColor=v_msg;

    lblfmsg.ForeColor=System.Drawing.Color.Red;

    return;

  }

}

表单送件按钮代码(一)cs(C#)(未完)的更多相关文章

  1. 表单送件前的Check(二) (未完)

    #region 新增表单前的Check动作 public static void NewFormRequestCheck(string _FormID, string _VocaEmpID, stri ...

  2. Angular19 自定义表单控件

    1 需求 当开发者需要一个特定的表单控件时就需要自己开发一个和默认提供的表单控件用法相似的控件来作为表单控件:自定义的表单控件必须考虑模型和视图之间的数据怎么进行交互 2 官方文档 -> 点击前 ...

  3. Vue3组件(九)Vue + element-Plus + json = 动态渲染的表单控件

    一个成熟的表单 表单表单,你已经长大了,你要学会: 动态渲染 支持单列.双列.多列 支持调整布局 支持表单验证 支持调整排列(显示)顺序 依据组件值显示需要的组件 支持 item 扩展组件 可以自动创 ...

  4. 基于 el-form 封装一个依赖 json 动态渲染的表单控件

    nf-form 表单控件的功能 基于 el-form 封装了一个表单控件,包括表单的子控件. 既然要封装,那么就要完善一些,把能想到的功能都要实现出来,不想留遗憾. 毕竟UI库提供的功能都很强大了,不 ...

  5. html bottom html submit按钮表单控件与CSS美化

    一.html submit与bottom按钮基本语法结构 1.html submit按钮在input标签里设置type="submit"即可设置此表单控件为按钮. submit按钮 ...

  6. 文档驱动 —— 表单组件(五):基于Ant Design Vue 的表单控件的demo,再也不需要写代码了。

    源码 https://github.com/naturefwvue/nf-vue3-ant 特点 只需要更改meta,既可以切换表单 可以统一修改样式,统一升级,以最小的代价,应对UI的升级.切换,应 ...

  7. MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件

    类似于多层级的角色与权限控制功能,用MVC实现MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件.最近我们的项目中需要用到树型菜单,以前使用WebForm时,树型菜单有微软提供的 ...

  8. 基于CkEditor实现.net在线开发之路(3)常用From表单控件介绍与说明

    上一章已经简单介绍了CKEditor控件可以编写C#代码,然后可以通过ajax去调用,但是要在网页上面编写所有C#后台逻辑,肯定痛苦死了,不说实现复杂的逻辑,就算实现一个简单增删改查,都会让人头痛欲裂 ...

  9. 了解HTML表单之13个表单控件

    目录 传统控件 button select option optgroup textarea fieldset legend label 新增控件 datalist keygen output pro ...

随机推荐

  1. 扩展和嵌入 Python 解释器 用 C 或 C++ 编写模块以使用新模块来扩展 Python 解释器的功能 定义新的函数\对象类型\方法。 将 Python 解释器嵌入到另一个应用程序中

    // https://python3-cookbook.readthedocs.io/zh_CN/latest/c15/p02_write_simple_c_extension_module.html ...

  2. 000 装docker

    直接参考别人的文章,经过验证,没有问题,需要网络. URL: https://www.cnblogs.com/qgc1995/archive/2018/08/29/9553572.html 我是虚拟机 ...

  3. 小D课堂 - 零基础入门SpringBoot2.X到实战_第9节 SpringBoot2.x整合Redis实战_39、SpringBoot2.x整合redis实战讲解

    笔记 3.SpringBoot2.x整合redis实战讲解 简介:使用springboot-starter整合reids实战 1.官网:https://docs.spring.io/spring-bo ...

  4. PHP 循环输出多重数组元素

    <?php $arr = array( array( array( array( array( ,, ) ) ), array( ,,) ) ), array(, , ) ); function ...

  5. Flutter 目录结构介绍、入口、自定义 Widget、MaterialApp 组件、Scaffold 组件

    Flutter 目录结构介绍 文件夹 作用 android android 平台相关代码 ios ios 平台相关代码 lib flutter 相关代码,我们主要编写的代 码就在这个文件夹 test ...

  6. linux系统telnet端口不通能收到SYN但不回SYN+ACK响应问题排查(转载)

    linux系统telnet端口不通能收到SYN但不回SYN+ACK响应问题排查 一:背景:一台机器从公司办公网登录不上且所有tcp端口都telnet不通,但是通过同机房同的其它机器却可以正常访问到出问 ...

  7. sql中去除重复的数据 select distinct * from table

    总的思路就是先找出表中重复数据中的一条数据,插入临时表中,删除所有的重复数据,然后再将临时表中的数据插入表中.所以重点是如何找出重复数据中的一条数据,有三种情况 1.重复数据完全一样,使用distin ...

  8. 我的求职之路:9个offer,12家公司,35场面试,最终谷歌【转载】

    作者:Luc(写于2012年) 一.简介 毕业答辩搞定,总算可以闲一段时间,把这段求职经历写出来,也作为之前三个半月的求职的回顾. 首先说说我拿到的offer情况: 微软,3面->终面,搞定 百 ...

  9. Flink 实现指定时长或消息条数的触发器

    Flink 中窗口是很重要的一个功能,而窗口又经常配合触发器一起使用. Flink 自带的触发器大概有: CountTrigger: 指定条数触发 ContinuousEventTimeTrigger ...

  10. HTML布局水平导航条2制作

    前两个博文导航条都不是铺满水平的浏览器的,很多导航条样式都是随着浏览器的移动,是100%.此外前两个博文导航条都是块状点击的,也就是给a标签加宽高,设置成块状显示,点击的时候不一定要点文字,只要点击该 ...