为了懒,我痛心学习Ajax

Posted 奔走的王木木Sir

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为了懒,我痛心学习Ajax相关的知识,希望对你有一定的参考价值。

🏇 小 木 又 来 了 , 没 错 就 是 我 \\textcolorOrange小木又来了,没错就是我
🍣 A j a x 主 要 是 实 现 页 面 和 w e b 服 务 器 之 间 数 据 的 异 步 传 输 \\textcolorgreenAjax主要是实现页面和 web 服务器之间数据的异步传输 Ajaxweb🍣
🍣 它 无 需 重 新 加 载 整 个 网 页 的 情 况 下 , 能 够 更 新 部 分 网 页 的 技 术 \\textcolorgreen它无需重新加载整个网页的情况下,能够更新部分网页的技术 ,🍣
🍣 不 管 是 前 端 还 是 后 端 都 应 该 去 学 习 一 下 我 们 亲 爱 的 \\textcolorgreen不管是前端还是后端都应该去学习一下我们亲爱的 A j a x \\textcolorredAjax Ajax🍣
🙏 博 主 也 在 学 习 阶 段 , 如 若 发 现 问 题 , 请 告 知 , 非 常 感 谢 \\textcolorOrange博主也在学习阶段,如若发现问题,请告知,非常感谢 💗
🤭 最 近 也 临 近 考 试 阶 段 了 , 但 是 我 怎 么 能 忘 了 你 们 呢 , 起 来 冲 ! ! ! \\textcolorred🤭最近也临近考试阶段了,但是我怎么能忘了你们呢,起来冲!!! 🤭

所用到的代码都可以在这里找到

文章中有个"从前的我",不知道哪位小伙伴可以看到,嘿嘿🤭

1.简介

  • AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
  • AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
  • 使用 AJAX 创造出动态性极强的 web 界面:当您在谷歌的搜索框输入关键字时,javascript 会把这些字符发送到服务器,然后服务器会返回一个搜索建议的列表。
  • 传统的网页(即不用ajax技术的网页),想要更新内容或者提交一个表单,都需要重新加载整个网页。
  • 使用ajax技术的网页,通过在后台服务器进行少量的数据交换,就可以实现异步局部更新。
  • 使用Ajax,用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的Web用户界面。

2.伪造Ajax

2.1 先 创 建 一 个 m o d u l e , 添 加 w e b 支 持 \\textcolorOrangeRed2.1先创建一个module,添加web支持 2.1moduleweb💻

2.2 配 置 我 们 的 w e b . x m l \\textcolorOrangeRed2.2配置我们的web.xml 2.2web.xml💻

中间有个applicationContext.xml,记得在resources下添加

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">

    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

</web-app>

2.3 a p p l i c a t i o n C o n t e x t . x m l \\textcolorOrangeRed2.3applicationContext.xml 2.3applicationContext.xml💻

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">

    <!--1.注解驱动-->
    <mvc:annotation-driven/>
    <!--2.静态资源过滤-->
    <mvc:default-servlet-handler/>
    <!--3.扫描包:controller-->
    <context:component-scan base-package="com.hxl.controller"/>
    <!--4.视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
</beans>

随后增加controller的包和jsp的包

2.4 编 写 A j a x C o n t r o l l e r \\textcolorOrangeRed2.4编写AjaxController 2.4AjaxController💻

package com.hxl.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//自动返回一个字符串
@RestController
public class AjaxController 
    @RequestMapping("/t1")
    public String test()
        return "hello";
    

WEB工程中在Setting Project,下artifact中添加lib文件,在lib目录下添加jar包。

配置tomcat测试。成功就可以进行下面了。

2.5 新 建 一 个 t e s t . h t m l \\textcolorOrangeRed2.5新建一个test.html 2.5test.html💻

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>iframe测试体验页面无刷新</title>
    <script>
        function go() 
            document.getElementById("iframeOne").src="https://blog.csdn.net/qq_43585922?spm=1000.2115.3001.5343";
        
    </script>
</head>
<body>

<div>
    <p>请输入地址:</p>
    <p>
        <input type="text" id = "url">
        <input type="button" value="提交" onclick="go()">
    </p>
</div>

<div>
    <iframe id="iframeOne" style="width:100%;height: 520px"></iframe>
</div>

</body>
</html>

思想:我们设置一个浮动的框,需要一个地址来进行提交,然后我们绑定一个事件,获得框的id,让里面的src值等于一个网页。

用idea中的浏览器打开。

我们点击提交之后就会看到一个宽度百分百,高度520px的页面

2.6 优 化 一 下 \\textcolorOrangeRed2.6优化一下 2.6💻

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>iframe测试体验页面无刷新</title>
    <script>
        function go() 
            //所有的值,变量,要提前获取
            let url = document.getElementById("url").value;
            document.getElementById("iframeOne").src=url;
        
    </script>
</head>
<body>

<div>
    <p>请输入地址:</p>
    <p>
        <input type="text" id = "url" value="https://blog.csdn.net/qq_43585922?spm=1000.2115.3001.5343">
        <input type="button" value="提交" onclick="go()">
    </p>
</div>

<div>
    <iframe id="iframeOne" style="width:100%;height: 520px"></iframe>
</div>

</body>
</html>

这里我们优化了获取url。src=url,下面的value也进行了修改,这样就可以动态在input中输入,点击提交查看网页。

利用AJAX可以做:

  • 注册时,输入用户名自动检测用户是否已经存在。
  • 登陆时,提示用户名密码错误
  • 删除数据行时,将行ID发送到后台,后台在数据库中删除,数据库删除成功后,在页面DOM中将数据行也删除。

3.jQuery.ajax

简介
  • Ajax的核心是XMLHttpRequest对象(XHR)。XHR为向服务器发送请求和解析服务器响应提供了接口。能够以异步方式从服务器获取新数据。

  • jQuery 提供多个与 AJAX 有关的方法。

  • jQuery是一个库;js的大量函数(方法)

  • 通过 jQuery AJAX 方法,能够使用 HTTP Get 和 HTTP Post 从远程服务器上请求文本、HTML、XML 或 JSON – 同时您能够把这些外部数据直接载入网页的被选元素中。

  • jQuery Ajax本质就是 XMLHttpRequest,对它进行了封装,方便调用!

jQuery.ajax(...)
      部分参数:
            url:请求地址
            type:请求方式,GETPOST1.9.0之后用method)
        headers:请求头
            data:要发送的数据
    jquery.lazyload 懒加载失效,图片无法加载

java 的ViewPage +片段懒加载

项目源代码被好朋友“盗用”!让我痛心疾首!给Python源码加密!

html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。

PHP必用代码片段

Javascript代码片段在drupal中不起作用