zoukankan      html  css  js  c++  java
  • 检测只有网络通畅才能提交表单

    因为网络问题,常常断断续续的,常常用户填写了半天表单,提交的时候网络正好不通,刚才填写的全部就没有了。
    所以进行了下面的改进,在submit之前,先检查网络是不是有问题,比如访问一个页面CtrlTest.aspx,看看是不是正常。
    本来写这个程序的时候,只判断了xh.status结果发现总是不成功。
    原来调用xh.send()时,如果网络不通,会出异常的。
    下面的代码应该是可以的。
    <%@ Page language="c#" Codebehind="CtrlTest.aspx.cs" AutoEventWireup="false" Inherits="WGSys.Web.WaterWeb.CtrlTest" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
        
    <HEAD>
            
    <title>ConnectionTest</title>
            
    <SCRIPT language="javascript">
            
    var isConn;
            
    function CanSubmit()
            {
                
    var d;
                d 
    = new Date();
                xh 
    = new ActiveXObject("Microsoft.XMLHTTP")
                xh.onreadystatechange 
    = getReady
                
    try
                {
                    xh.open(
    "GET","CtrlTest.aspx?rnd="+d.getTime(),false);
                    xh.send();
                }
                
    catch(ex)
                {
                    isConn
    =false;
                }
                
    if(!isConn)
                {
                    alert('现在网络有问题,请稍后再提交!');
                }
                
    return isConn;
            }
            
    function getReady()
            {
                
    if(xh.readyState==4)
                {
                    
    if(xh.status==200)
                    {
                            isConn
    =true;
                    }
                    
    else
                    {
                            isConn
    =false;
                    }
                }
            }
            
    </SCRIPT>
        
    </HEAD>
        
    <BODY>
            
    <FORM id="Form1" method="post" runat="server">
                
    <INPUT type="submit" value="Button" onclick="return CanSubmit()">
            
    </FORM>
        
    </BODY>
    </HTML>
  • 相关阅读:
    分享自己写的基于Dapper的轻量级ORM框架~
    无屏幕和键盘配置树莓派WiFi和SSH
    树莓派配置静态IP
    给树莓派Raspbian stretch版本修改软件源
    使用powershell批量更新git仓库
    nodejs开发过程中遇到的一些插件记录
    在Ubuntu上搭建IntelliJ IDEA license server服务器
    腾讯云Ubuntu服务器修改root密码
    Elasticsearch搜索类型(query type)详解
    dubbo作为消费者注册过程分析
  • 原文地址:https://www.cnblogs.com/wormday/p/368992.html
Copyright © 2011-2022 走看看