zoukankan      html  css  js  c++  java
  • 对象失去焦点时自己动提交数据 V2

    一年多前,Insus.NET有写过一篇 《对象失去焦点时自己动提交数据》,那一篇是依赖Linkbutton来做隐藏提交。是否有不用依赖Linkbutton方法呢? 答案是肯定的。

    .aspx页只拉一个TextBox控件:

    View Code
     1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
     2 
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     4 
     5 <html xmlns="http://www.w3.org/1999/xhtml">
     6 <head runat="server">
     7     <title></title>
     8 </head>
     9 <body>
    10     <form id="form1" runat="server">
    11     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    12     </form>
    13 </body>
    14 </html>


    .aspx.cs页中,首选在Page_Init事件,为TextBox注册OnBlur事件:

    View Code
     protected void Page_Init(object sender, EventArgs e)
        {      
            this.TextBox1.Attributes.Add("onblur", Page.ClientScript.GetPostBackEventReference(this.TextBox1, "OnBlur"));
        }


    写一个onBlue事件,将替代LinkButton的Click事件:

    View Code
    private void OnBlurHandle(string ctrl, string args)
        {       
            if (ctrl == this.TextBox1.UniqueID && args == "OnBlur")
            {
                //这里写提交到数据库中
            }
        }

    然后在网页的Page_Load事件,判断是否IsPostBack。

    View Code
     protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                var ctrl = Request.Params[Page.postEventSourceID];
                var args = Request.Params[Page.postEventArgumentID];

                OnBlurHandle(ctrl, args);
            }
        }
  • 相关阅读:
    002: Opencv 4.0代码执行
    Opencv4.0+cmake3.13.3+vs2017源码编译
    ubuntu 18.0Lts +YouCompleteMe插件安装
    pip 安装keras
    pip 安装paddle
    pip 安装 tensorboardX
    pip 安装pytorch 命令
    TT信息-4-Spring Boot/Spring Cloud
    TT信息-3-Spring/Spring MVC
    TT信息-2设计模式
  • 原文地址:https://www.cnblogs.com/insus/p/2756195.html
Copyright © 2011-2022 走看看