python和js交互调⽤的⽅法后台代码都是利⽤的
1.【】使⽤jquery的get json与后台交互
前端js代码⽚段
var data= {
'a': $('input[name="a"]').val(),
'b': $('input[name="b"]').val()
}
$.getJSON($SCRIPT_ROOT + '/_add_numbers',data, function(data) {
$('#result').sult);
$('input[name=a]').focus().select();
});
后端pthon代码如下
# ajax,Get⽅式与js交互(⾮表单)采⽤了flask框架@ute('/_add_numbers')def add_numbers(): """Add two numbers server side, ridiculous """
a = ('a', 0, type=int)
b = ('b', 0, type=int)
log.info(a)
log.info(b) return jsonify(result=a + b)
2.【万能⽅式】使⽤jquery的ajax与后台交互,设置不同的参数,可以get也可以post
上⾯的例⼦⽤ajax⽅式,前端代码如下
var data= {
'a': $('input[name="a"]').val(),
'b': $('input[name="b"]').val()
}
{# $.getJSON($SCRIPT_ROOT + '/_add_numbers',data, function(data) {#}
{# $('#result').sult);#}
{# $('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').sult);
$('input[name=a]').focus().select();
},
error: function(xhr, type,xxx) {
alert('error ')
}
});
后台代码不便依然是
# ajax,Get⽅式与js交互(⾮表单)@ute('/_add_numbers')def add_numbers():
"""Add two numbers server side, ridiculous """
a = ('a', 0, type=int)
b = ('b', 0, type=int)
log.info(a)
log.info(b) return jsonify(result=a + b)
3.⽤ajax补充⼀个post⽅式的例⼦
js调用方法的三种写法前端js如下
function testmethod ()
{
alert('rabbit');
var data = {
"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交互(表单提交)
@ute('/login',methods=['POST'])
def login():
log.info('lalal')
return jsonify(username='xixi',pwd='123')
这样就很轻松的实现了前端与后台的交互
本质上,前端与后端交互都是通过json完成的
⾄于表单提交,就不需要写js了,在form表单⾥⾯有有⼀个submit类型按钮,点击时,会⾃动提交到后台对应的路由上进⾏处理。对于表单提交,后台可以⽤
s=('username',None)
来捕捉前端⽹页的值。但是如果是⾮表单提交,则需要⽤js获取值后,通过data参数传⼊到后端才⾏。
实例扩展:
python使⽤flask与js进⾏前后台交互的例⼦
flask与js进⾏前后台交互代码如下,后台给前端发数据:
python部分:
# -*- coding: utf-8 -*-
from flask import Flask,jsonify,render_template
import json
app = Flask(__name__)#实例化app对象
testInfo = {}
@ute('/test_post/nn',methods=['GET','POST'])#路由
def test_post():
testInfo['name'] = 'xiaoming'
testInfo['age'] = '28'
return json.dumps(testInfo)
@ute('/')
def hello_world():
return 'Hello World!'
@ute('/index')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run(host='0.0.0.0',#任何ip都可以访问
port=7777,#端⼝
debug=True
)
js部分:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>echarts</title>
<style type="text/css">
html,
body {
width: 100%;
height: 100%;
}
body {
margin: 0px;
padding: 0px
}
div {
float: left;
}
#container {
width: 50%;
height: 100%;
}
#info {
padding: 10px 20px;
}
</style>
</head>
<body>
<div id="container"></div>
<div id="info">数据展⽰:</div>
<script src=""></script>
<script>
$.ajax({
url: "test_post/nn",
type: "POST",
dataType: "json",
success: function (data) {
console.log(data)
}
})
</script>
</body>
</html>
到此这篇关于python和js交互调⽤的⽅法的⽂章就介绍到这了,更多相关python和js如何交互内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论