easyui是一款基于jQuery的UI庫(kù),它提供了很多易于使用的組件,包括表單、表格、對(duì)話框等等。當(dāng)使用easyui的組件與后端交互時(shí),我們通常使用ajax請(qǐng)求來提交數(shù)據(jù)。而對(duì)于提交JSON格式的數(shù)據(jù),我們可以使用jQuery的$.post方法來實(shí)現(xiàn)。
首先,在使用$.post發(fā)送JSON數(shù)據(jù)之前,我們需要先將數(shù)據(jù)轉(zhuǎn)換成JSON格式的字符串。比如,我們有一個(gè)簡(jiǎn)單的表單:
<form id="form1"> <input type="text" name="name" id="name"> <input type="text" name="age" id="age"> </form>
我們可以使用jQuery的serializeArray方法來將表單數(shù)據(jù)轉(zhuǎn)換成JSON格式的對(duì)象:
var data = $("#form1").serializeArray(); var jsonData = {}; $(data).each(function(i, field){ jsonData[field.name] = field.value; }); jsonData = JSON.stringify(jsonData);
接下來,我們可以使用$.post方法來發(fā)送JSON數(shù)據(jù),代碼如下:
$.post("/api/user", jsonData, function(result){ console.log(result); });
上面的代碼會(huì)向"/api/user"發(fā)送一個(gè)POST請(qǐng)求,請(qǐng)求體為jsonData,當(dāng)請(qǐng)求成功后,會(huì)打印出響應(yīng)結(jié)果。
需要注意的是,服務(wù)器端需要支持JSON格式的數(shù)據(jù)解析,一般可以使用request.body來獲取POST請(qǐng)求體中的數(shù)據(jù),代碼如下:
var express = require('express'); var app = express(); var bodyParser = require('body-parser'); app.use(bodyParser.json()); app.post('/api/user', function (req, res) { var name = req.body.name; var age = req.body.age; // 處理請(qǐng)求數(shù)據(jù) res.send('success'); });
以上就是使用easyui發(fā)送JSON數(shù)據(jù)的方法,希望本文能對(duì)讀者有所幫助。