通过简单的ajax验证是否存在已有的用户名
首先来说说我对ajax的理解:简单地来说就是在不重新刷新页面的情况下,实现数据的调用获得更新。
我在这里介绍的是要过jquery封装好的ajax,大家可以去了解一下使用原生的XMLHttpRequest对象请求的知识点。
ajax的各种参数老是记不全,这次也来记录一下几个常用的。
1.url:发送请求的地址
2.type:要求为String类型的参数,请求方式(get/post)默认情况下是get。注意其他Http请求也可,例如put、delete等,但是要根据浏览器是否支持
3.timeout:设置请求超时的时长
4.async:是否为异步请求,默认设置为true,如果需要设未同步请求,修改为false即可
5.cache:默认true,false表示将不会从浏览器缓存中加载信息
6.daa:要求为Object或String类型的参数。发送到服务器的数据,如果不是字符串,将自动转换为字符串格式。
7.dataType:预期服务器返回回来的数据类型。可用类型:html(纯文本html信息)、xml、json、jsonp、text(返回纯文本字符串)
8.success:要求为Function()类型的参数,请求成功后调用的回调函数,存在两个参数。
(1)由服务器返回,根据dataType参数进行处理后的数据
(2)描述状态的字符串
function(data,textStatus){
data可以是html、text等
}
9.error:要求为Function()类型的参数,请求失败后调用的回调函数
该函数有3个参数,即XMLHttpRequest对象、错误信息、捕获的错误对象(可选)。ajax事件函数如下:
       function(XMLHttpRequest, textStatus, errorThrown){
          //通常情况下textStatus和errorThrown只有其中一个包含信息
          this;   //调用本次ajax请求时传递的options参数
       }
下面进入正题。
js部分代码:
msg接收后台传递的字符串数据,通过html的形式在客户端进行显示
<sctipt type="text/javascript">
$.ajax({
type:"post",
url:"/Teachers/AjaxCheckLoginName",
dataType:"html",
data:"teaName="+$("#TeacherLoginName").val(),
async:true,
beforedSend:function(XMLHttpRequest){
$("#showResult").text("正在查询...") },
success:function(msg){
$("#showResult").html(msg);
$("#showResult").css("color","red")
}
});
</script>
这里使用ajax前你可以引用jquery3.4.1或者其他版本。
html部分代码(ASP.NET MVC视图):
<label>账号</label>
@Html.TextBox("TeacherLoginName", null, new { @class = "form-control", type = "text", placeholder = "请输入账号" })
<input type="button" id="btn" value="查看此账号是否存在" onclick="IsFindTeaLoginName()" />
<div id="showResult" style="float:left"></div>
<br />
后台代码部分(控制器):
在后台定义返回值为string类型的方法,通过参数的形式接受ajax传递过来的文本框参数,拿到之后去数据库比较,存在就return一个字符
否则,就return "可以使用" 的字符串
public string AjaxCheckLoginName(string teaName)
{
if (db.Teacher.Where(t => t.TeacherLoginName == teaName).ToList().Count > )
{
//Response.Write("");
return "用户名已经存在!";
}
else
{
//Response.Write("");
if (teaName=="")
{
return "请输入一个账号...";
}
else
{
return "您可以使用此用户名!";
} }
}
通过简单的ajax验证是否存在已有的用户名的更多相关文章
- 使用Ajax验证用户是否已存在
		在服务器端使用Servlet,里面在集合里存了几个字符串,没有对数据库操作. 前台input页面和Ajax验证: <%@ page language="java" conte ... 
- 自制简单表单验证relative与absolute定位
		html结构,用到了label与span <label class="relative"><input type="text" name=&q ... 
- jQuery结合Ajax实现简单的前端验证和服务端查询
		上篇文章写了简单的前端验证由传统的JavaScript转向流畅的jQuery滑动验证,现在拓展一下,使用Ajax实现用户体验比较好的异步查询,同样还是从建立一个简单的表单开始 <form nam ... 
- jquery validationEngine 使用ajax验证不通过也提交表单
		转自 http://mylfd.iteye.com/blog/2007227 validationEngine给我们为前端的表单验证减少了很大的工作量.大部分情况我们使用validationEngin ... 
- jquery validate ajax 验证重复的2种方法
		转载自:http://blog.51yip.com/jsjquery/1484.html jquery validate 经过这种多年的改良,已经很完善了.它能满足80%的验证需要,如果validat ... 
- 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库
		1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ... 
- JS表单验证插件(支持Ajax验证)
		自己编写了一个表单验证插件,支持ajax验证,使用起来很简单. 每个需要验证的表单元素下面有一个span标签,这个标签的class有一个valid表示需要验证,如果有nullable则表示可为空:ru ... 
- jQuery validate 根据 asp.net MVC的验证提取简单快捷的验证方式(jquery.validate.unobtrusive.js)
		最近在学习asp.netMVC,发现其中的验证方式书写方便快捷,应用简单,易学好懂. 验证方式基于jQuery的validate 验证方式,也可以说是对jQuery validate的验证方式的扩展, ... 
- 无法在提交表单前通过ajax验证解决办法
		博主在一个小项目中,要实现注册表单无刷新验证用户名或密码,但是发现不管怎么样都无法在先通过ajax验证之前不提交表单. 例如:一个简单的验证函数 function check(){ $.post(&q ... 
随机推荐
- JS高精度乘法计算问题(牛客网乘法-求 a 和 b 相乘的值,a 和 b 可能是小数,需要注意结果的精度问题)
			用到的知识点===> toFixed(num); toFixed() 方法可把 Number 四舍五入为指定小数位数的数字; 参数num: 代表小数位数: 例:var num = 5.56789 ... 
- vux中表单验证,在提交时自动聚焦到未验证通过的那栏;及循环表单的验证
			首先vux中的表单验证在点击触发,失焦时才显示错误信息,如果不管它,它就没反应,这显然是不合理的:解决办法就是:在提交时做验证,不通过的话就使用.focus()及.blur()方法给它聚焦,失焦. i ... 
- LeetCode-矩形重叠
			题目描述: 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标. 如果相交的面积为正,则称两矩形重叠.需要明确的是,只在 ... 
- Win2012+Nginx+IIS+xxfpm(服务版)
			这次做了一个项目部署在环境为win2012+nginx1.13.5+mysql5.6+php7的环境下,服务器是阿里云的 由于之前没有这种经验,遇到了点坑(据参考文章里说的这坑还有些年份了),最开始自 ... 
- iviewadmin url 加入 Router base #viewDesignAdmin
			router/index.js const router = new Router({ routes, base: '/viewDesignAdmin/', mode: 'history' ... 
- 为什么 String 是 immutable 类
			二哥,你能给我说说为什么 String 是 immutable 类(不可变对象)吗?我想研究它,想知道为什么它就不可变了,这种强烈的愿望就像想研究浩瀚的星空一样.但无奈自身功力有限,始终觉得雾里看花终 ... 
- npm和yarn使用
			npm和yarn使用 他们都属于js包管理工具,都可以安装包或者模块yarn 是由facebook.google等联合开发推出的 区别: npm 下载包的话 比如npm install,它是按照包的排 ... 
- MyBatis框架——单表查询
			Mybatis单表查询,示例 1.创建数据库 /* Navicat MySQL Data Transfer Source Server : localhost Source Server Versio ... 
- 遍历集合的常见方式,排序,用lambda表示是怎样的
			Collection集合的功能: Object[] toArray() 将集合转成数组 Iterator iterator() 通过方法的调用 获取I ... 
- matplotlib 中的一些参数设置
			首先:在pycharm 中要使图显示出来,最后一定要加上 plt.show(),如: plt.bar(x, y) plt.show() 下面就是我使用 matplotlib 遇到的一些常用参数设置: ... 
