测开之路一百五十二:基于jquery的ajax实现(load、get、ajax)

ajax除了用原生的js实现之外,也可以使用jquery实现,而且用jquery更方便

看一个简单的示例,保留上一篇的content路由和html,实现上一篇一样的功能,点击获取内容,局部刷新

准备一个页面用于被调用

<h1>这是content.html的h1标签</h1><p style="background: red">    这是content.html的p标签,红色    <a href="https://www.baidu.com/">百度</a></p><div style="background: blue">这是content.html的div标签,蓝色</div><div style="background: yellow" class="my-cls">这是content.html的div标签,黄色</div>

路由

from flask import Flask, render_template, request

app = Flask(__name__, static_url_path=‘‘)

@app.route(‘/content/‘)def text_content():    return render_template(‘content.html‘)

请求

方法一:$().load(url, 回调函数)

新建一个html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>jquery-ajax </title>    {#引入jquery#}    <script src="https://cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script></head><body><div id="content"></div><button id="btnLoad">点击获取content内容</button></body></html>{#指定事件触发时,jquery请求并/content/并加载内容#}<script>    $(document).ready(function () {        $(‘#btnLoad‘).click(function () {            $(‘#content‘).load(‘/content/‘);        });    });</script>

路由

from flask import Flask, render_template, request

app = Flask(__name__, static_url_path=‘‘)

@app.route(‘/jquery_ajax/‘)def jquery_ajax():    return render_template(‘ajax-basic.html‘)

请求

点击

load支持回调函数

load支持筛选渲染,如值渲染div.class=my-cls的标签

只展示p标签下的a标签

方法二:$.get(url, [get参数,可不传], 回调函数)

<script>    $(document).ready(function () {        $(‘#btnGet‘).click(function () {            $.get(‘/content/‘ , null, function (response) { // 这里的response即get的响应结果                $(‘#content‘).html(response);            });        });    });</script>

方法三:$.ajax

<script>    $(document).ready(function () {        $(‘#btnAjax‘).click(function () {            $.ajax({                url: ‘/content/‘,                method: ‘GET‘,                data: null,                success: function (response) {                    $(‘#content‘).html(response);                }            });        });    });</script>

原文地址:https://www.cnblogs.com/zhongyehai/p/11553153.html

时间: 2024-08-29 17:17:52

测开之路一百五十二:基于jquery的ajax实现(load、get、ajax)的相关文章

测开之路一百五十五:jquery-validation前台数据验证

前面做的wtform验证是服务器端的验证,需要把数据传输到服务器,服务器验证后再吧结果传输到前端,网络慢的时候,用户体验不好,所以需要前端验证,且后端验证不能少 传统的js或者jquery如果要验证信息,需要把一个个元素下的信息拿下来,再验证,而validation可以根据元素定位,可以直接就验证了 validation官网:https://jqueryvalidation.org/cnd引用地址:https://www.bootcdn.cn/jquery-validate/引用标签:<scri

测开之路一百三十六:错误消息闪回提示

错误消息提示:flask.flash 视图 app.secret_key = 'qoihf2397r21380r2/./ad' # 加密的安全码,越复杂越好,flask后台自动进行加密 @app.route('/login/', methods=['GET', 'POST'])def login(): """ 登录 """ if request.method == 'POST': username = request.form.get('user

测开之路一百三十八:会话管理之session

session管理和使用,需要用到flask的session模块和设置安全码:app.secret_key 比如列表页和编辑功能只能给admin用 列表页 编辑页 添加session 登录成功时,把username添加到session里面 app.secret_key = 'qoihf2397r21380r2/./ad' # 加密的安全码,越复杂越好,flask后台自动进行加密 @app.route('/login/', methods=['GET', 'POST'])def login():

测开之路一百五十三:ajax之load、get、ajax在项目中的体现

在查询的时候是使用ajax进行请求的 目录结构 personal.models from datetime import datetimefrom flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() class Department(db.Model): """ 部门 """ __tablename__ = 'department' # primary_key=True:主键, autoinc

测开之路一百二十五:flask之urlencode参数传递和解析

当get请求传参时,用?分隔参数和域名,用&分隔参数,如果参数里面本身就有&符号就会识别不出来,还是会当成分隔符,所以这些数据在传输的时候,就需要转义,现在普遍是转成urlencode编码:%20%xx%23 在jinja2模板里面,可以使用 data|urlencode 发送urlencode编码,而python里面又有urllib.parse.unquote()可以解析urlencode编码 视图函数 html:访问"/"返回html,在html上面点击超链接时请求

测开之路一百二十六:flask之获取request请求数据

可以根据flask的request对象获取所有的请求信息 path = request.path # 获取请求地址method = request.method # 获取请求方法ip = request.remote_addr # 请求来源的ipform = request.form # 获取form表单的数据value = request.values # 获取查询字符串/表单数据headers = request.headers # 后区头部信息User_Agent = request.he

测开之路一百二十九:jinja2模板语法

flask用的是jinja2模板,有自己特定的语法 形参: 在html里面留占位参数: {{ 参数名 }},后端传值时,参数名=参数值 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>b页面</title></head><body> <h1>{{ user }},你好<

测开之路一百零二:jquery元素操作

jquery对元素操作,获取/替换文本(.text()).html(.html()).属性(.attr()).值(.val()) html代码 text() 根据标签获取文本值 同一个标签下筛选明细 最后一个元素 第一个元素 替换文本 html 获取html 替换html <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>

测开之路一百零五:bootstrap的两种引用方式

一:下载到本地引用: 3.3.7版本:https://getbootstrap.com/docs/3.3/getting-started/#download 下载后解压到本地项目中引用 第二种,cdn标签引用:https://www.bootcdn.cn/twitter-bootstrap/ 为了稳定,找3.3.7版本,min.css,复制标签:<link href="https://cdn.bootcss.com/twitter-bootstrap/3.3.7/css/bootstrap