Forms 人工修改后的羊驼只读
我正在使用羊驼表格显示一些信息:Forms 人工修改后的羊驼只读,forms,readonly,alpacajs,Forms,Readonly,Alpacajs,我正在使用羊驼表格显示一些信息: $("#object_details").alpaca({ "schema": map[obj_type], "data": JSON.stringify(json_data["content"]), "options": { "label": "some label" } }) 所以我定义了一些JSON模式: json_schema = { "title": "Host", "e
$("#object_details").alpaca({
"schema": map[obj_type],
"data": JSON.stringify(json_data["content"]),
"options": {
"label": "some label"
}
})
所以我定义了一些JSON模式:
json_schema = {
"title": "Host",
"en_description": "Host object",
"type": "object",
"properties": {
"addr": {
"en_description": "IP addresses",
"title":"Host addresses",
"type": "object",
"properties": {
"ipv4": {
"en_description": "Host IPv4 address",
"title":"IPv4 address",
"type": "string",
"format": "ipv4",
"readonly":True
},
"ipv6" : {
"type": "string"
}
}
}
正如你们所见,我在只读模式下有一些字段,在编辑模式下有一些字段。
我想将修改后的字段设置为只读。例如,在这里,如果修改ipv6字段,一旦发送表单,ipv6字段将变为只读
这可能吗?是的,您可以在提交表单后将只读选项设置为true,如下所示:
field.options.readonly = true;
field.refresh();
我希望这就是你想要的,如果你还需要别的东西,请告诉我。我很乐意帮助您。谢谢您的回答,但这行不通。好吧,这很有效,但这不是我期望的(实际上,这将使字段成为只读,但不会将其保存为只读,我的意思是,如果我刷新页面,字段将不再是只读的!我需要的是字段永远保持只读,但仅限于此数据集,如果我加载另一个具有相同JSON模式的数据集,字段将不会是只读的!我希望我的解释足够清楚!为此,您应该在提交表单后将数据保存到DB中,然后在初始化羊驼表单之前,您应该检索这些数据并将设置为表单,然后使用postRender函数将readonly值更改为true(如果字段中有DB中的数据)。对于延迟,非常感谢您!我终于完成了t、 正是使用你的方法。我在json中添加了一个字段,其中包含要设置为“只读”的不同字段。在我表单的每个字段上,我都有一个“可观察的”当数据被修改时会触发,并将字段的路径放在我的json中。然后我将其保存到我的DB中。当我必须显示表单时,我使用postRender回调遍历包含只读字段的json字段,并将相应字段放在readOnly上!谢谢!