现在随着接触EasyNVR时间越来越长,越发的觉得EasyNVR真的是一个“神器”。从功能上来说自身不仅可以拉出来使用(具体功能搜索EasyNVR一定有惊喜!),也可以作为设备端与第三方平台接入使用。从界面来说,简洁,明朗,方便用户操作。。。。。。不能这样自己舔自己了。。。有点过分了,有视频直播需求可以试试他,说不定会帮你少走很多弯路。

回到具体问题上来,有用户反应EasyNVR前端对于表单提交这一块用户体验不是很好。主要问题是表单在提交成功以后,提交按钮依然可以触发。居然有用户提出来,我们就要尽最大可能满足用户需求。

问题截图:

问题分析:

 $.ajax({type: "GET",url: _url + "/setbaseconfig",data: $this.serialize(),})

从代码中我们不难看出,EasyNVR前端页面是通过触发Ajax来进行表单提交的。出现上图中的问题主要是由于多次的触发Ajax。因此,要规避这个问题,我们可以通过限定AJax的触发来,完成这项需求。

解决问题:

首先,我们找出,是什么触发这个Ajax事件的。

$('#web-config form, #nvr-config form').validator().on('submit', function(e) {.........
}

不难看出都是通过submit来触发Ajax的。

整体的流程无非这两种:

1.点击提交按钮->触发ajax提交数据->提交成功->屏蔽提交按钮防止再次提交;

2.点击提交按钮->触发ajax提交数据->提交失败->保持提交按钮状态供再次提交;

Ajax提供的操作空间还是相当完善的。
我们都知道ajax是执行异步网络请求,我们可以在请求前,请求后,请求动作完成,请求动作成功、请求动作失败等都有对应的函数来进行操作。ajax的这些特征,就更加的方便我们来操作了。

首先我们抛开提交的内容,从提交的过程来说,
在EasyNVR配置表单中我们没有只需要注重ajax请求动作的成功和失败;
我们主要调用的函数就是success: function、error: function;
请求成功后在success中将提交按钮屏蔽起来,如果请求失败,提示出错误原因,保持提交按钮的可以提交的状态。

HTML中的input元素、button元素、option元素等都具有一个disabled属性。
当赋予该属性时该元素将变得不可交互。可以用这个属性来屏蔽提交按钮。

 $.ajax({type: "GET",url: _url + "/setbaseconfig",data: $this.serialize(),success: function(data) {reload();$.gritter.add({text: '配置成功,重启后生效!',class_name: 'gritter-info'});$this.find("button[type=submit]").prop("disabled", true);},error: function(e){console.log(e)$this.find("button[type=submit]").prop("disabled", false);}

本篇主要叙述的是屏蔽按钮的一个过程。
下一篇将介绍如何实现当表单内容出现变化后可以提交,表单内容不变的情况下依然屏蔽提交按钮。


关于EasyNVR

EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发;

详细说明:http://www.easydarwin.org/easynvr/

获取更多信息

邮件:support@easydarwin.org

WEB:www.EasyDarwin.org

Copyright © EasyDarwin.org 2012-2017

转载于:https://www.cnblogs.com/babosa/p/8206993.html

EasyNVR无插件流媒体服务器前端技术防止重复提交的方法相关推荐

  1. EasyNVR支持的摄像机、NVR设备接入类型以及关于国标设备是否支持接入EasyNVR无插件流媒体服务器...

    背景分析: 随着互联直播的发展,EasyNVR也是顺应时代潮流顺势发展,也是越来越受广大客户的欢迎. 主要是因为EasyNVR可以完美的摆脱网络的限制,可以实现互联网级别的直播分发和录像回看,特别是对 ...

  2. 如何自己实现一套EasyNVR这样的无插件流媒体服务器

    EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...

  3. 组装硬盘录像机linux,如何自己构建一套EasyNVR这样的无插件流媒体服务器实现摄像机硬盘录像机的网页可视化直播...

    EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...

  4. EasyNVR无插件直播服务器播放页面的集成----单独的播放器样式

    背景需求: EasyNVR自身拥有独立的客户端体系,安卓和IOS拥有各自独立的APP, 安卓下载地址:https://fir.im/EasyNVR: IOS下载可直接在APPstore搜索EasyNV ...

  5. EasyNVR无插件直播流媒体服务器云端集中管控的EasyNVS云管理平台安装使用文档

    EasyNVS - EasyNVR云端集中管理服务 EasyNVS云管理平台是一套专门用于集中化管理EasyNVR 的解决方案. EasyNVR 采用主动注册的方式接入到 EasyNVS, 再由 Ea ...

  6. Onvif/RTSP安防摄像头视频流媒体网页无插件直播服务器EasyNVR安装成功但web页无法正常访问的原因分析

    背景分析 随着互联网基础设施建设的不断完善和发展,带宽的不断提速,尤其是光纤入户.4G/5G/NB-IoT各种网络技术的大规模商用,视频随时随地可看.可控.可视频会议调度指挥.可智能预警.可智能检索回 ...

  7. EasyDSS高性能流媒体服务器前端重构

    本文围绕着实现EasyDSS高性能流媒体服务器的前端框架来展开的,具体EasyDSS的相关信息可在:www.easydss.com 找到! EasyDSS 高性能流媒体服务器前端架构概述 EasyDS ...

  8. js 判断支持webgl_基于WebGL无插件虚拟场景漫游技术如何构建?ThingJS

    #三维可视化##3D开发# WebGL, ThingJS及3DSMAX 虚拟场馆漫游技术构建 基础组件 加载三维模型 实现虚拟漫游 渲染优化 如果要构建一个具有交互性和拓展性的沉浸式漫游场景,常用到3 ...

  9. springboot解决前端短时间重复提交问题

    /*** 自定义一个注解,给需要防止重复提交的方法加上该注解*/ public @interface RepeatSubmit { } 使用spring的aop,对注解进行切面,通过guava的缓存来 ...

最新文章

  1. LeetCode简单题之统计匹配检索规则的物品数量
  2. node_modules中包不完整的解决方法
  3. 浅谈Redis及其安装配置
  4. centos下kong源码安装
  5. Java黑皮书课后题第8章:***8.20(游戏:四子连)两人玩游戏,轮流将有颜色的棋子放在一个六行七列的垂直悬挂网格中。谁先实现一行、一列或者一对角线上有4个相同颜色的棋子。
  6. python进行数据分析
  7. python绘制汉字_OpenCV Python 绘制中文字
  8. SIEM比以往更重要的5个原因
  9. 全连接层的作用_全连接层实现
  10. C#的Bitmap.LockBits 使用说明
  11. Element Dialog弹框回到顶部
  12. Android微信代扣sdk无法拉起,微信JS-SDK选择图片遇到的坑
  13. Web Directions South 2012的四个大创意
  14. 记住熊三木,一场关于文创产业“复兴十年” 的豪赌
  15. Java基础 DAY05
  16. 【Class 51】【Python实例】自动控制浏览器 登陆QQ邮箱发送邮件,内容为鼠标复制的文本
  17. 支持向量机入门到精通
  18. Androidq下编译efr32mg21
  19. 实现求出100~200之间的全部素数,每行输出8个数,每个数宽度为5列。 输入格式:无 输出格式:“%5d“ “\n“
  20. C#语言实例源码系列-实现屏幕放大器和取色

热门文章

  1. 集中控制集中电源型消防应急照明和疏散指示系统 验收方法与标准
  2. 比亚迪新能源汽车战略布局研究
  3. android 8 忘记图案,手机绘图解锁忘了怎么办?三种方法教你轻松搞定
  4. AcWing 1289. 序列的第k个数(快速幂 等差、等比数列的性质)
  5. 将 Kali v.2020_2 x64 GNOME 3 桌面上的Top Bar 移到底部
  6. JUnit自动化单元测试
  7. 互联网金融大数据风控模型,到底需要多大的数据?
  8. 中软实训总结_中软实训心得
  9. Firefox OS 2.0 模拟器 – 使用官方火狐浏览器扩展无痛完美模拟体验火狐手机系统
  10. 2016百度之星 - 资格赛(Astar Round1)Problem A