這篇文章主要介紹“python和js怎么交互”,在日常操作中,相信很多人在python和js怎么交互問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”python和js怎么交互”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、祁連ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的祁連網(wǎng)站制作公司
1.【get方式】使用jquery的get json與后臺(tái)交互
前端js代碼片段
var data= { '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(); });
后端pthon代碼如下
# ajax,Get方式與js交互(非表單)采用了flask框架@app.route('/_add_numbers')def add_numbers(): """Add two numbers server side, ridiculous but well...""" a = request.args.get('a', 0, type=int) b = request.args.get('b', 0, type=int) log.info(a) log.info(b) return jsonify(result=a + b)
2.【萬能方式】使用jquery的ajax與后臺(tái)交互,設(shè)置不同的參數(shù),可以get也可以post
上面的例子用ajax方式,前端代碼如下
var data= { '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 ') } });
后臺(tái)代碼不便依然是
# ajax,Get方式與js交互(非表單)@app.route('/_add_numbers')def add_numbers(): """Add two numbers server side, ridiculous but well...""" a = request.args.get('a', 0, type=int) b = request.args.get('b', 0, type=int) log.info(a) log.info(b) return jsonify(result=a + b)
3.用ajax補(bǔ)充一個(gè)post方式的例子
前端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 ') } }); }
后臺(tái)代碼如下:
# ajax ,post方式與js交互(表單提交) @app.route('/login',methods=['POST']) def login(): log.info('lalal') return jsonify(username='xixi',pwd='123')
這樣就很輕松的實(shí)現(xiàn)了前端與后臺(tái)的交互
本質(zhì)上,前端與后端交互都是通過json完成的
至于表單提交,就不需要寫js了,在form表單里面有有一個(gè)submit類型按鈕,點(diǎn)擊時(shí),會(huì)自動(dòng)提交到后臺(tái)對(duì)應(yīng)的路由上進(jìn)行處理。對(duì)于表單提交,后臺(tái)可以用
s=request.form.get('username',None)
來捕捉前端網(wǎng)頁的值。但是如果是非表單提交,則需要用js獲取值后,通過data參數(shù)傳入到后端才行。
到此,關(guān)于“python和js怎么交互”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!