gpt4 book ai didi

javascript - 如何将 extjs 标记字段作为数组发布而不用引号引起来

转载 作者:行者123 更新时间:2023-11-30 10:00:41 24 4
gpt4 key购买 nike

我正在尝试使用 extjs 发布表单。我有需要作为 json 数组发送的标签字段。这是一个标记域:

{
xtype: 'tagfield',
fieldLabel: 'Product(s)',
name: 'productIds',
store: {
type: 'products'
},
valueField: 'productId',
displayField: 'productName',
encodeSubmitValue: true //this is supposed to send an array per https://docs.sencha.com/extjs/6.0/6.0.0-classic/#!/api/Ext.form.field.Tag-cfg-encodeSubmitValue
}

这是 Ajax 提交:

Ext.Ajax.request({
url: 'api/events/create',
method:'POST',
headers: { 'Content-Type': 'application/json' },
params : Ext.JSON.encode(form.getValues()),
success: function(form, action) {
Ext.Msg.alert('Success', action.result);
},
failure: function(form, action) {
//console.log(form.getForm().getValues());
Ext.Msg.alert('Submission failed.', 'Please make sure you selected an item for each required field.', action.result);
}
});

JSON 负载最终看起来像这样:

{ "productIds": "[1,2]"}

上述数组无法反序列化出字符串(后端使用Jackson反序列化)

有谁知道如何将以上内容作为 { "productIds": [1,2] } 发送?

最佳答案

因此,当我删除 encodeSubmitValue 时,它会自动将标记字段作为不带引号的数组发送。无论如何,感谢您的想法!

这是没有 encodeSubmitValue 的标签域:

{
xtype: 'tagfield',
fieldLabel: 'Product(s)',
name: 'productIds',
store: {
type: 'products'
},
valueField: 'productId',
displayField: 'productName'
}

关于javascript - 如何将 extjs 标记字段作为数组发布而不用引号引起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31861502/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com