jQuery实现form表单基于ajax无刷新提交方法实例代码


Posted in jQuery onNovember 04, 2019

本文实例讲述了jQuery实现form表单基于ajax无刷新提交方法。分享给大家供大家参考,具体如下:

首先,新建Login.html页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>$.ajax()方法发送请求</title>
 <script type="text/javascript" src="js/jquery-1.4.1.js"></script>
 <style type="text/css">
 body
 {
  font-size: 13px;
 }
 .divFrame
 {
  width: 225px;
  border: solid 1px #666;
 }
 .divFrame .divTitle
 {
  padding: 5px;
  background-color: #eee;
  height: 23px;
 }
 .divFrame .divTitle span
 {
  float: left;
  padding: 2px;
  padding-top: 5px;
 }
 .divFrame .divContent
 {
  padding: 8px;
  text-align: center;
 }
 .divFrame .divContent .clsShow
 {
  font-size: 14px;
  line-height: 2.0em;
 }
 .divFrame .divContent .clsShow .clsError
 {
  font-size: 13px;
  border: solid 1px #cc3300;
  padding: 2px;
  display: none;
  margin-bottom: 5px;
  background-color: #ffe0a3;
 }
 .txt
 {
  border: #666 1px solid;
  padding: 2px;
  width: 150px;
  margin-right: 3px;
 }
 .btn
 {
  border: #666 1px solid;
  padding: 2px;
  width: 50px;
 }
 </style>
 <script type="text/javascript">
 $(function () {
  $("#txtName").focus();//输入焦点
  $("#txtName").keydown(function (event) {
  if (event.which == "13") {//回车键,移动光标到密码框
   $("#txtPass").focus();
  }
  });
  $("#txtPass").keydown(function (event) {
  if (event.which == "13") {//回车键,用.ajax提交表单
   $("#btnLogin").trigger("click");
  }
  });
  $("#btnLogin").click(function () { //“登录”按钮单击事件
  //获取用户名称
  var strTxtName = encodeURI($("#txtName").val());
  //获取输入密码
  var strTxtPass = encodeURI($("#txtPass").val());
  //开始发送数据
  $.ajax
  ({ //请求登录处理页
   url: "Login.aspx", //登录处理页
   dataType: "html",
   //传送请求数据
   data: { txtName: strTxtName, txtPass: strTxtPass },
   success: function (strValue) { //登录成功后返回的数据
   //根据返回值进行状态显示
   if (strValue == "True") {//注意是True,不是true
    $(".clsShow").html("操作提示,登录成功!" + strValue);
   }
   else {
    $("#divError").show().html("用户名或密码错误!" + strValue);
   }
   }
  })
  })
 })
 </script>
</head>
<body>
 <form id="frmUserLogin">
 <div class="divFrame">
 <div class="divTitle">
  <span>用户登录</span>
 </div>
 <div class="divContent">
  <div class="clsShow">
  <div id="divError" class="clsError">
  </div>
  <div>
   名称:<input id="txtName" type="text" class="txt" /></div>
  <div>
   密码:<input id="txtPass" type="password" class="txt" /></div>
  <div>
   <input id="btnLogin" type="button" value="登录" class="btn" /> 
   <input id="btnReset" type="reset" value="取消" class="btn" />
  </div>
  </div>
 </div>
 </div>
 </form>
</body>
</html>

然后,新建Login.aspx,接收并处理数据:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="JSDemo.Login" ResponseEncoding="gb2312"%>
<%
 string strName = System.Web.HttpUtility.UrlDecode(Request["txtName"]);
 string strPass = System.Web.HttpUtility.UrlDecode(Request["txtPass"]);
 bool login = false;
 if (strName == "admin" && strPass == "admin")
 {
 login = true;
 }
 Response.Write(login);
%>

补充:form使用AJAX提交完整实例:

//将form转换为AJAX提交
 function ajaxSubmit(url,frm,fn){
 var dataPara=getFormJson(frm);
 $.ajax({
  url:url,
  type:"post",
  data:dataPara,
  async:false,
  dataType:'txt',
  success:fn
 });
 }
 //将form中的值转换为键值对
 function getFormJson(frm){
 var o={};
 var a=$(frm).serializeArray();
 $.each(a,function(){
  if(o[this.name]!==undefined){
  if(!o[this.name].push){
   o[this.name]=[o[this.name]];
  }
  o[this.name].push(this.value || '');
  }else{
  o[this.name]=this.value || '';
  }
 });
 return o;
 }
/*
 //前台调用方式
 function autoSubmitFun(){
  ajaxSubmit("autoSumitScoreAJAX.action",$('#formId'),function(){});
 }
*/

以上就是关于jQuery实现ajax无刷新提交的全部知识点,感谢大家的学习和对三水点靠木的支持。

jQuery 相关文章推荐
jquery submit()不能提交表单的解决方法
Apr 24 jQuery
jquery ajax异步提交表单数据的方法
Oct 27 jQuery
jQuery ajax读取本地json文件的实例
Oct 31 jQuery
jQuery EasyUI 选项卡面板tabs的使用实例讲解
Dec 25 jQuery
使用jQuery 操作table 完成单元格合并的实例
Dec 27 jQuery
JS与jQuery判断文本框还剩多少字符可以输入的方法
Sep 01 jQuery
为jquery的ajax请求添加超时timeout时间的操作方法
Sep 04 jQuery
基于jquery实现九宫格拼图小游戏
Nov 30 jQuery
在Vue项目中引入JQuery-ui插件的讲解
Jan 27 jQuery
详解jQuery如何实现模糊搜索
May 10 jQuery
jQuery实现移动端图片上传预览组件的方法分析
May 01 jQuery
jQuery实现推拉门效果
Oct 19 jQuery
jQuery鼠标滑过横向时间轴样式(代码详解)
Nov 01 #jQuery
jQuery高级编程之js对象、json与ajax用法实例分析
Nov 01 #jQuery
Javascript和jquery在selenium的使用过程
Oct 31 #jQuery
JQuery 实现文件下载的常用方法分析
Oct 29 #jQuery
jquery validate 实现动态增加/删除验证规则操作示例
Oct 28 #jQuery
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
Oct 26 #jQuery
jquery实现购物车基本功能
Oct 25 #jQuery
You might like
全国FM电台频率大全 - 19 广东省
2020/03/11 无线电
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
2007/03/15 PHP
PHP详细彻底学习Smarty
2008/03/27 PHP
PHP 第二节 数据类型之转换
2012/04/28 PHP
php笔记之:文章中图片处理的使用
2013/04/26 PHP
php遍历目录与文件夹的多种方法详解
2013/11/14 PHP
php利用ffmpeg提取视频中音频与视频画面的方法详解
2017/06/07 PHP
万能的php分页类
2017/07/06 PHP
php学习笔记之mb_strstr的基本使用
2018/02/03 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
javascript multibox 全选
2009/03/22 Javascript
心扬JS分页函数代码
2010/09/10 Javascript
IE图片缓存document.execCommand(&quot;BackgroundImageCache&quot;,false,true)
2011/03/01 Javascript
基于jquery实现的移入页面上空文本框时,让它变为焦点,移出清除焦点
2011/07/26 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
鼠标拖动实现DIV排序示例代码
2013/10/14 Javascript
JavaScript支持的最大递归调用次数分析
2014/06/24 Javascript
为何JS操作的href都是javascript:void(0);呢
2015/11/12 Javascript
jQuery实现图片加载完成后改变图片大小的方法
2016/03/29 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
React Native之ListView实现九宫格效果的示例
2017/08/02 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
python实现从字符串中找出字符1的位置以及个数的方法
2014/08/25 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
Python实现数通设备端口使用情况监控实例
2015/07/15 Python
pandas分别写入excel的不同sheet方法
2018/12/11 Python
python爬虫之快速对js内容进行破解
2019/07/09 Python
python pyqtgraph 保存图片到本地的实例
2020/03/14 Python
中秋节礼品促销方案
2014/02/02 职场文书
锦旗标语大全
2014/06/23 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
2015年端午节活动策划书
2015/05/05 职场文书
简单实现一个手持弹幕功能+文字抖动特效
2021/03/31 HTML / CSS
解决Nginx 配置 proxy_pass 后 返回404问题
2021/03/31 Servers
python析构函数用法及注意事项
2021/06/22 Python