views.py
def ajaxjson(request):
testdata = ‘[’
import datetime
start = datetime.datetime(2014, 1, 2, 6, 35, 6, 764)
end = datetime.datetime(2015, 2, 2, 6, 55, 3, 381)
findsort1 = ‘startTime’, -1
findsort2 = ‘startTime’, 1
skip = 0
limit = 0
for data in coll.find({'startTime': {'$gte': start, ‘$lt’: end}}).sort().skip(skip).limit(limit):
testdata = testdata + ‘{’+ ‘“Time”: ’ + json.dumps(data.get('Time'), default = json_util.default) +', ‘+ ’“Number”: ‘ + json.dumps(data.get(’Number')) +', ‘+ ’“duration”: ‘ + json.dumps(data.get(’duration')) +', ‘+ ’}' + ‘, ’
testdata = testdata + ‘]’
testdata = testdata.replace(', ]',']')
return HttpResponse(testdata)
так откправляю json
на клиенте потом var data2 = JSON.parse(data);
хотел так оправить, но потом не знаю как на клиенте обрабоать return HttpResponse(json.dumps(testdata, default = json_util.default), content_type = “application/json”)
у клиента
<script type=“text/javascript”>
$(document).ready(function() {
$.get(“/ajax/”, function(data){
var data2 = JSON.parse(data);
var dataSet = ;
for(var i=0; i<data.length; i++){
var inumber = i+1;
var others = “ ”;
if (data2.Number!=null)
{
if (data2.Number.toString().length >5 )
{others = “Входящий”;}
}
dataSet.push([inumber,new Date(data2.Time.$date + (now.getTimezoneOffset() * 60000)).toString(“ddd MMM dd yyyy HH:mm:ss”),data2.Number,(new Date).clearTime().addSeconds(data2.duration).toString('H:mm:ss'),others]);
}
$('#example').dataTable( {
“createdRow”: function ( row, columns, dataIndex ) {
if ( columns == “700”) {
// alert('ok');
$('td', row).addClass('my1');
}
if(columns == “701”){
$('td', row).addClass('my2');
}
if(columns == “702”){
$('td', row).addClass('my3');
}
//это я так выделил номера 700-702 другим цветом. т.е все строку выделил другим цветом
},
“data”: dataSet,
“columns”: [
{ “title”: “№” },
{ “title”: “Time” },
{ “title”: “Number” },
{ “title”: “Duration”},
{ “title”: “others”}
],
} );
});
} );
</script>
таблицу брал с сайта http://www.datatables.net/