BootstrapValidator的Remote远程验证

2024-01-25 08:18

本文主要是介绍BootstrapValidator的Remote远程验证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在使用BootstrapValidator的remote的时候,遇到了两个问题;
1.data传递一直为null
2.后台返回值为true的时候,前台还是按照false处理

第一个问题:
原代码:

 usertelephone: {//验证input项:验证规则message: 'The username is not valid',                  validators: {notEmpty: {//非空验证:提示消息message: '手机号不能为空'},stringLength: {min: 11,max: 11,message: '手机号必须为11位'},threshold: 11, //有6字符以上才发送ajax请求,(input中输入一个字符,插件会向服务器发送一次,设置限制,6字符以上才开始)remote: {//ajax验证。server result:{"valid",true or false} 向服务发送当前input name值,获得一个json数据。例表示正确:{"valid",true}  url: '/Login/CheckUserTelephoneEmail',//验证地址data:{userTelephone:$('input[name="usertelephone"]').val() }},message: '手机号已被注册',//提示消息delay: 2000,//每输入一个字符,就发ajax请求,服务器压力还是太大,设置2秒发送一次ajax(默认输入一个字符,提交一次,服务器压力太大)type: 'POST'//请求方式},

原因:
因为在获取数据的时候并不是实时获取的,而是按照一开始页面加载时获取的,所以显然内容为空,传到后台的数据也就是空的。
解决方法:
使用函数获取所需要的值

 data:{userTelephone:function() {return $('input[name="usertelephone"]').val() }},

第二个问题:
官方文档并没有给出后台需要返回给前台的值有什么要求,经过我的烦恼和测试。
传到前台的必须是Json格式,而且Json格式的内容必须是{valid = true}
原代码:

 public JsonResult CheckUserTelephoneEmail(string userTelephone){JsonResult ret = new JsonResult();ret.JsonRequestBehavior = JsonRequestBehavior.AllowGet;ret.Data = true;UserContract contract = LoadService<IUserService>().GetUserContract(userTelephone);if (contract != null)             //手机为空,可以用{ret.Data = false;}return ret;}

原因:
JsonReslut.data的内容不是valid=true
解决方法:

//先增加一个内部类internal class str{public bool valid;}public JsonResult CheckUserTelephoneEmail(string userTelephone){JsonResult ret = new JsonResult();str hhh = new str() { valid = true };ret.JsonRequestBehavior = JsonRequestBehavior.AllowGet;UserContract contract = LoadService<IUserService>().GetUserContract(userTelephone);if (contract != null)             //手机为空,可以用{hhh = new str() { valid = false };}ret.Data = hhh;return ret;}

这篇关于BootstrapValidator的Remote远程验证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/642636

相关文章

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

Xshell远程连接失败以及解决方案

《Xshell远程连接失败以及解决方案》本文介绍了在Windows11家庭版和CentOS系统中解决Xshell无法连接远程服务器问题的步骤,在Windows11家庭版中,需要通过设置添加SSH功能并... 目录一.问题描述二.原因分析及解决办法2.1添加ssh功能2.2 在Windows中开启ssh服务2

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

C++ | Leetcode C++题解之第393题UTF-8编码验证

题目: 题解: class Solution {public:static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num &

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

easyui同时验证账户格式和ajax是否存在

accountName: {validator: function (value, param) {if (!/^[a-zA-Z][a-zA-Z0-9_]{3,15}$/i.test(value)) {$.fn.validatebox.defaults.rules.accountName.message = '账户名称不合法(字母开头,允许4-16字节,允许字母数字下划线)';return fal

easyui 验证下拉菜单select

validatebox.js中添加以下方法: selectRequired: {validator: function (value) {if (value == "" || value.indexOf('请选择') >= 0 || value.indexOf('全部') >= 0) {return false;}else {return true;}},message: '该下拉框为必选项'}

web群集--nginx配置文件location匹配符的优先级顺序详解及验证

文章目录 前言优先级顺序优先级顺序(详解)1. 精确匹配(Exact Match)2. 正则表达式匹配(Regex Match)3. 前缀匹配(Prefix Match) 匹配规则的综合应用验证优先级 前言 location的作用 在 NGINX 中,location 指令用于定义如何处理特定的请求 URI。由于网站往往需要不同的处理方式来适应各种请求,NGINX 提供了多种匹

远程工具-SecureCRT/SecureFX

下载地址: https://www.portablesoft.org/securecrt-securefx-integrated/