2017-08-11 76 views
-1

我想表單數據提交的要求是這樣的:序列化對象到表單數據

playdate: 2017-08-06 
players[1][name]: Alex 
players[1][username]: Alex 
players[1][score]: 51 

不過,如果我添加了一個球員反對這樣的:

var players = grid.getSelectionModel().getSelection().map(function(record) { 
    return record.getData(); 
}); 
form.submit({ 
    url:'log.php' 
    params: { 
     players: players 
    } 
}); 

然後ExtJS的提交後像這樣:

playdate: 2017-08-06 
players: [object Object] 

不ExtJS是否支持序列化一個表單urlencoded請求的對象?

Relevant fiddle

+0

你爲什麼不字符串化數據發送到服務器。例如Ext.encode()或Ext.JSON.encode()。檢查它解決您的問題。 – Tejas

+0

我無法更改後端,boardgamegeek服務器無法進行字符串輸入。 – Alexander

回答

0

看一看的documentation。 它應該在你提交呼叫使用屬性jsonSubmit:true

form.submit({ 
    url:'log.php' 
    params: { 
     players: players 
    }, 
    jsonSubmit: true 
}); 
+0

不,它沒有。使用jsonSubmit時,它不會執行表單提交。當然它不會,因爲我會告訴ExtJS做一個json提交,這不是打算的。 – Alexander