ajax傳遞和接收引數以及事件委託
Python序列化 字串 = json.dumps(物件) 物件->字串 物件 = json.loads(字串) 字串->物件 JavaScript: 字串 = JSON.stringify(物件) 物件->字串 物件 = JSON.parse(字串) 字串->物件
ajax傳送時傳送的是字串,接收要是字串型別,不過你可以通過dataType把後端傳來的資料直接變成物件
也可以通過JSON.parse把後端傳來的資料直接變成物件
a. $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1':'v1'}, success:function(arg){ // arg是字串型別 // var obj = JSON.parse(arg) } })
b. $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1':'v1'}, dataType: 'JSON', success:function(arg){ // arg是物件 } })
c. $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1':[1,2,3,4]}, dataType: 'JSON', success:function(arg){ // arg是物件 } })
ajax傳送資料時 data中的v
a. 只是字串或數字 $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1':'v1'}, dataType: 'JSON', success:function(arg){ // arg是物件 } })
b.提交的資料有陣列時要加個taditional:True
b. 包含陣列 $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1':[1,2,3,4]}, dataType: 'JSON', traditional: true, success:function(arg){ // arg是物件 } })
c. 傳字典 要先把字典進行序列化,再進行傳輸 $.ajax({ url: 'http//www.baidu.com', type: 'GET', data: {'k1': JSON.stringify({}) }, dataType: 'JSON', success:function(arg){ // arg是物件 } })
事件委託
$('要繫結標籤的上級標籤').on('click','要繫結的標籤',function(){})
$('要繫結標籤的上級標籤').delegate('要繫結的標籤','click',function(){})