后端pthon代码如下

#ajax,Get方式与js交互(非表单)采用了flask框架@app.route('/_add_numbers')defadd_numbers():
"""Addtwonumbersserverside,ridiculousbutwell..."""
a=request.args.get('a',0,type=int)
b=request.args.get('b',0,type=int)
log.info(a)
log.info(b)returnjsonify(result=a+b)

2.【万能方式】使用jquery的ajax与后台交互,设置不同的参数,可以get也可以post

上面的例子用ajax方式,前端代码如下

vardata={
'a':$('input[name="a"]').val(),
'b':$('input[name="b"]').val()
}
{#$.getJSON($SCRIPT_ROOT+'/_add_numbers',data,function(data){#}
{#$('#result').text(data.result);#}
{#$('input[name=a]').focus().select();#}
{#});#}

$.ajax({
type:'get',
url:$SCRIPT_ROOT+'/_add_numbers',
data:data,
contentType:'application/json;charset=UTF-8',
dataType:'json',
success:function(data){
$('#result').text(data.result);
$('input[name=a]').focus().select();
},
error:function(xhr,type,xxx){
alert('error')
}
});

后台代码不便依然是

#ajax,Get方式与js交互(非表单)@app.route('/_add_numbers')defadd_numbers():
"""Addtwonumbersserverside,ridiculousbutwell..."""
a=request.args.get('a',0,type=int)
b=request.args.get('b',0,type=int)
log.info(a)
log.info(b)returnjsonify(result=a+b)

3.用ajax补充一个post方式的例子

前端js如下

functiontestmethod()
{
alert('rabbit');
vardata={
"name":"test"
}
$.ajax({
type:'POST',
url:'/login',
data:data,
contentType:'application/json;charset=UTF-8',
dataType:'json',
success:function(data){
$('#result').text(data.username);
},
error:function(xhr,type){
alert('error')
}
});
}

后台代码如下:

#ajax,post方式与js交互(表单提交)
@app.route('/login',methods=['POST'])
deflogin():
log.info('lalal')
returnjsonify(username='xixi',pwd='123')

这样就很轻松的实现了前端与后台的交互

本质上,前端与后端交互都是通过json完成的

至于表单提交,就不需要写js了,在form表单里面有有一个submit类型按钮,点击时,会自动提交到后台对应的路由上进行处理。对于表单提交,后台可以用

s=request.form.get('username',None)

来捕捉前端网页的值。但是如果是非表单提交,则需要用js获取值后,通过data参数传入到后端才行。

实例扩展:

python使用flask与js进行前后台交互的例子

flask与js进行前后台交互代码如下,后台给前端发数据:

python部分:

#-*-coding:utf-8-*-
fromflaskimportFlask,jsonify,render_template
importjson

app=Flask(__name__)#实例化app对象

testInfo={}

@app.route('/test_post/nn',methods=['GET','POST'])#路由
deftest_post():
testInfo['name']='xiaoming'
testInfo['age']='28'
returnjson.dumps(testInfo)

@app.route('/')
defhello_world():
return'HelloWorld!'

@app.route('/index')
defindex():
returnrender_template('index.html')


if__name__=='__main__':
app.run(host='0.0.0.0',#任何ip都可以访问
port=7777,#端口
debug=True
)

js部分:








echarts

html,
body{
width:100%;
height:100%;
}

body{
margin:0px;
padding:0px
}

div{
float:left;
}

#container{
width:50%;
height:100%;
}

#info{
padding:10px20px;
}





数据展示:

	



到此这篇关于python和js交互调用的方法的文章就介绍到这了,更多相关python和js如何交互内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!

热门推荐

1 毛坯房验收经验和常识 看了之后再验房心里有底
2 二手房收房如何交接 二手房收房注意问题
3 专业验收毛坯房的价格 商品房验收合格的标准
4 精装房怎么验收 精装房请验房师有用吗
5 一般要到哪里找验房师 验房师有哪些作用呢
6 请人验房一般是多少钱 验房师费用是多少
7 怎样测量房子面积 建筑面积和使用面积怎么算
8 收房需要注意什么 仔细检查不松懈
9 收房时三书一证一表是什么 主要作用介绍
10 交房时交房税费有哪些 本文为你一一讲解
11 验房都需要验什么 要做哪些准备呢
12 毛坯房验房师有必要请吗 毛坯房装修完如何验收
13 地下室防水工程质量验收规范详解
14 水性涂料、油性涂料区别介绍
15 零基础布艺DIY工坊 教你做超萌猫头鹰钥匙包
16 三棵树漆怎么样?三棵树漆官方网站
17 家庭“装修套餐”中猫腻你知道吗?
18 小空间大浴望 卫浴间装修巧支招