什么是 AJAX ?

AJAX = 异步 JavaScript 和 XML。

AJAX 是一种用于创建快速动态网页的技术。

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。

有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。

AJAX 实例解释

上面的 AJAX 应用程序包含一个 div 和一个按钮。

div 部分用于显示来自服务器的信息。当按钮被点击时,它负责调用名为 loadXMLDoc() 的函数:

<html>
<body> <div id="myDiv"><h3>Let AJAX change this text</h3></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button> </body>
</html>

接下来,在页面的 head 部分添加一个 <script> 标签。该标签中包含了这个 loadXMLDoc() 函数:

<head>
<script type="text/javascript">
function loadXMLDoc()
{
.... AJAX script goes here ...
}
</script>
</head>

下面的是我在开发农业信息平台项目时候所使用的一些 AJAX 的工作原理代码。

    <script language="javascript" type="text/javascript">

         function chg() {
if ($("#sel").val() == "FPhone") {
// $("#FPhone").focus(function () {
// $("#FPhone").val("");
// });
// $("#FPhone").blur(function () {
// $("#FPhone").val("请输入手机号码");
// }); $("#FPhone").show();
$("#FMail").hide(); // var o = document.form1.sel;
// $("#FMail").val() = "";
$("#FSafeQuestion").hide();
// $("#FSafeQuestion").val() = "";
$("#key").hide();
// $("#key").val() = "";
}
else if ($("#sel").val() == "FMail") { // $("#FMail").focus(function () {
// $("#FMail").val("");
// });
// $("#FMail").blur(function () {
// $("#FMail").val("请输入电子邮箱"); //请输入电子邮箱
// });
$("#FMail").show();
$("#FPhone").hide();
// $("#FPhone").val() = null;
$("#FSafeQuestion").hide();
// $("#FSafeQuestion").val() = null;
$("#key").hide();
// $("#key").val() = null;
}
else {
$("#FSafeQuestion").show();
$("#key").show();
$("#FPhone").hide();
// $("#FPhone").val() = null;
$("#FMail").hide();
// $("#FMail").val() = null;
}
}
// $(function () {
// $("#submit").click(function () {
// if ("@ViewBag.ErrorMsg1" != "") {
// $('#trErrorMsg').hide();
// alert("'@ViewBag.ErrorMsg1'");
// } //错误提示放哪儿? 阻挡不住验证的效果!
// else if ("@ViewBag.ErrorMsg2" != "") {
// alert("'@ViewBag.ErrorMsg2'");
// }
// else {
// // alert("该手机号码已存在!");
// return alert("该手机号码已存在!");
//
// }
// // return true;
// });
// });
// function check() {
//
//
// alert("'@ViewBag.ErrorMsg'");
// }
</script>

这里的ajax是用于对输入框的显示和隐藏操作:

                                               <!--找回密码的方式-->
<tr>
<td height="" align="right" class="grey_font_style2">
<select class="wd" id="sel" onchange="chg()" size="" style="font-family: Verdana,Arial;
font-size: 10pt;">
<option value="FPhone">电话号码</option>
<option value="FMail">电子邮箱</option>
<option value="FSafeQuestion">安全问题</option>
</select>
<td height="" align="right" class="grey_font_style2" id="change">
<input type="text" value="" name="FPhone" id="FPhone" size="" style="font-family: Verdana,Arial;
font-size: 10pt font-color: #CCC" class="wd2" />
<input type="text" value="" name="FMail" id="FMail" style="display: none; font-family: Verdana,Arial;
font-size: 10pt;" class="wd2" />
<select name="FSafeQuestion" id="FSafeQuestion" size="" style="display: none; font-family: Verdana,Arial;
font-size: 10pt;" class="wd2">
<option value="" selected="selected">请选择</option>
<option value="我的小学名字">我的小学名字?</option>
<option value="我妈妈的名字">我妈妈的名字?</option>
<option value="我最难忘的日子">我最难忘的日子?</option>
<option value="我的学号或(工号)是">我的学号或(工号)是?</option>
<option value="我配偶的姓名是">我配偶的姓名是?</option>
<option value="我最喜欢的休闲运动是">我最喜欢的休闲运动是?</option>
<option value="我最喜欢的歌曲">我最喜欢的歌曲?</option>
<option value="我最喜爱的电影">我最喜爱的电影?</option>
<option value="自己编写问题">自己编写问题?</option>
</select>
</td>
</td>
</tr>

下面是对回答问题的输入框操作:(这些操作都是在前台页面上进行)

  <tr id="key" style="display: none;">
<td align="right">
<span class="register_mid_font_red"></span>你的答案是:
</td>
<td>
<input type="text" value="" name="FSafeAnswer" id="FSafeAnswer" style="font-family: Verdana,Arial;
font-size: 10pt;" class="wd2" />
</td>
</tr>

以上就是我第一次使用ajax时候的相关笔记和相关代码。

最新文章

  1. 导出BOM表
  2. 前后端分离中,Gulp实现头尾等公共页面的复用
  3. 《BI那点儿事》数据流转换——排序
  4. JavaWEB监听器
  5. 阿里云centos试用
  6. 《Linux内核设计与实现》读书笔记 - 目录 (完结)【转】
  7. Makefile第二讲:打印出内容和使用变量
  8. Basic Concepts of Block Media Recovery
  9. 重新认识JavaScript里的创建对象(一)
  10. HDU [P1533]
  11. JQuery案例一:实现表格隔行换色
  12. 注册Docker Hub、以及Push(九)
  13. Java 中 == 和 equals 的区别
  14. Sutherland-Hodgeman多边形裁剪
  15. 论战大数据----胖子哥的PK之旅(一)
  16. 平台支持的从经典部署模型到 Azure Resource Manager 的 IaaS 资源迁移
  17. node多图或者单图上传
  18. dlmalloc(一)【转】
  19. TensorFlow学习笔记(二)-- MNIST机器学习入门程序学习
  20. IllegalStateException: Unable to find a @SpringBootConfiguration

热门文章

  1. cocospod 安装和使用
  2. SQL编程之高级查询(子查询)以及注意事项
  3. 查找素数(0~1000)的算法(Java代码)
  4. 杭电1170 Balloon Comes
  5. 读取EXCEL
  6. Animator根骨骼运动原始实现代码
  7. STM32/GD32上内存堆栈溢出探测研究
  8. SPRING官方网下载地址
  9. fzu 2171 防守阵地 II
  10. WPFのTopMost属性的应用