信息模块中的加载和保存
管理员您好我在内容管理中设计了一个表单 ,其中一个字段的数据是通过表单的load事件中通写脚本this.view.lookup 这个函数获取到的,但问题就是每次都需要点一次编辑和保存,这个数据才能是最新的,不然就是上一次的数据,这个有什么方法解决吗?在load事件最后再加一个 this.action.getdocumentContext然后在save一下??
不太明白,
这个字段是表单的load事件里赋值的,那么就是每一次表单加载时都会赋值
不明白您这个最新指的是什么? 就是当我打开或者刷新文档的时候,触发load 里面的字段能获取到最新值, 但是我在数据那里建的视图获取到的数据和打开文档时加载的数据不一致,需要在文档那里点击编辑和保存才能在视图处获取到最新数据。 那是的,只有保存才会跟新data业务数据的。 本帖最后由 Lxw100514 于 2023-10-20 14:26 编辑
管理员您好 通过脚本修改了文档数据打印出来是修改后的,但实际在文档中的显示还是原来的,这是为什么啊?
var docid = this.documentContext.getDocument().id;
var action = this.Actions.load("x_cms_assemble_control");
action.DocumentAction.query_getDocumentData(//平台封装好的方法
docid,//uri的参数
function( json ){ //服务调用成功的回调函数, json为服务传回的数据
data2 = json.data; //为变量data赋值
data2.data.age1=3;
console.log("query_getDocumentData data2= "+data2);
console.log("query_getDocumentData data2.data.age1= "+data2.data.age1);
action.DataAction.updateWithDocument(//平台封装好的方法
docid,//uri的参数
data2,//body请求参数
function( json ){ //服务调用成功的回调函数, json为服务传回的数据
data3 = json.data; //为变量data赋值
console.log("修改后data3="+data3);
console.log("修改后age1="+data2.data.age1);
}.bind(this),
function( json ){ //服务调用失败的回调函数, json为服务传回的数据
data = json.data; //为变量data赋值
}.bind(this)
);
}.bind(this),
function( json ){ //服务调用失败的回调函数, json为服务传回的数据
data = json.data; //为变量data赋值
}.bind(this)
);
这是控制台打印的结果
这是实际文档显示结果
}.bind(this),true, 是不是有同步或异步的区别, 我在后面加true或者false 也没啥用,我直接用浏览器调用后台接口来查询和修改也是一样的结果,文档数据始终没变
打印表单只是预览一下,并没有保存数据吧,所以文档里的实际值是没改的 本帖最后由 Lxw100514 于 2023-10-25 13:58 编辑
论坛管理员 发表于 2023-10-23 12:32
打印表单只是预览一下,并没有保存数据吧,所以文档里的实际值是没改的
额 不好意思我说的打印是 控制台输出 我上面的脚本是写在一个字段的click事件中,我点击后 控制台输出是修改后的,但刷新后 仍然没更改。
并且我用浏览器调用修改接口显示是成功的再次调用get接口 获取的数据也是修改过的,但打开文档发现仍然没有更改,这个文档的数据来源是来自数据库?。
页:
[1]