我正在Zendesk中开发一个应用程序。在某个时候,我正在创建新票证。这是相关代码:
createTicketValues: function(){
var newTicket = {};
newTicket.ticket = {};
...
newTicket.ticket.custom_fields = [{id: 25064823, value: document.getElementById('25064823').value},{id: 360011962831, value: document.getElementById('360011962831').value}];
...
app.createTicket( newTicket);
},
createTicket: function(ticketData){
console.log(ticketData);
var request =
{
url: '/api/v2/tickets.json',
type: 'POST',
dataType: 'json',
data: ticketData
};
client.request(request).then(function (data){
app.addParentToProject();
})
},
但是,新票证没有任何这些自定义字段。这很奇怪,因为:
我还添加了其他字段(机票表格ID,优先级...),这些字段可以正确保存
如果我只保存一个这样的字段:
newTicket.ticket.custom_fields = {id: 25064823, value: document.getElementById('25064823').value};
或类似的
newTicket.ticket.custom_fields = {id: 360011962831, value: document.getElementById('360011962831').value};
一个自定义字段可以正确保存(但我必须选择保存其中一个)
在声明数组时我做错什么了吗?
对我来说,它看起来与他们的文档(https://developer.zendesk.com/rest_api/docs/core/tickets#setting-custom-field-values)中描述的内容相同,但是我已经花了几个小时试图对其进行修复,但无法修复。
答案 0 :(得分:0)
文档指出将id和value属性放在双引号中-您可以尝试一下吗?否则内容似乎还可以。
newTicket.ticket.custom_fields = [{"id": 25064823, "value": document.getElementById('25064823').value},{"id": 360011962831, "value": document.getElementById('360011962831').value}];