gpt4 book ai didi

javascript - 分机 JS 4 : Override format of data sent to the server

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:19:55 24 4
gpt4 key购买 nike

我正在使用 Ext JS 4 创建一个简单的管理员 UI。我从 this 开始来自 Sencha 网站的示例。我在表单中添加了一个复选框组(有四个选项),并且根据表单下方网格中的选定记录动态选中这些框。一切正常,但当我将数据发送到服务器时,复选框组中的数据格式因单击的按钮而异。

例如,当我编辑一条记录并单击保存按钮时,Ext JS 发送一个数组,其中包含对应于复选框选中状态的 true/false 值:

{"available": [true, true, false, false]}

当我创建一个全新的记录并单击添加按钮时,Ext JS 发送一个包含已选中复选框名称的数组:

{"available": ["Selection_1", "Selection_2", "Selection_3"]}

最后,如果我创建一条新记录并单击添加按钮但只选中一个复选框,Ext JS 将发送一个字符串值(与它在第二个示例中发送的数组相反):

{available": "Selection_1"}

Ext JS 为什么要这样做?这使得在服务器端处理数据变得困难。此外,有没有一种方法可以覆盖保存按钮将数据发送到服务器的方式,以便它以与添加按钮发送的格式相同的格式发送数据?谢谢!

最佳答案

您可以使用 allowSingle:false 来确保所有写操作都发送一个记录数组,而不管记录的数量。这是 API 文档:http://docs.sencha.com/ext-js/4-0/#!/api/Ext.data.writer.Json-cfg-allowSingle

就发送的值而言。我不清楚这里到底发生了什么,但你可能想看看这个函数:http://docs.sencha.com/ext-js/4-0/#!/api/Ext.form.CheckboxGroup-method-getSubmitData

编辑:另一个注意事项 - 复选框使用 inputValue弄清楚要在表单提交上发送什么。检查此属性的配置。

关于javascript - 分机 JS 4 : Override format of data sent to the server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13145912/

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