找回密码
 注册成为天翎用户
楼主: weiweihuihui

[解决中] 手机端下拉框findItem,不生效

[复制链接]
admin 发表于 2026-9-19 22:53:14 | 显示全部楼层
【本回复由 AI 根据产品文档自动生成】

您好,手机端动作前脚本里用 findItem("").setValue("") 给下拉框赋值不生效,常见原因和正确写法如下:

1. 确认调用对象。官方"打开当前文档函数"文档中修改字段的标准写法是先取当前文档对象,再在其上调用 findItem:
var doc = getCurrentDocument();
var item = doc.findItem("字段名");
if (item != null) {
    item.setValue("值");
}
请确认您是在 getCurrentDocument() 返回的文档对象上调用 findItem,而不是裸调用。

2. 改完要落库。动作脚本中通过 findItem().setValue() 修改只改了内存中的文档对象,如需保存需调用 getDocumentProcess().doUpdate(doc)(官方 curdoc-functions 示例即此写法);否则数据不落库,前台(含手机端)也不会显示新值。

3. 赋的值必须在选项列表内。下拉框赋的值要与选项脚本中的选项值完全一致(下拉框选项脚本形如 "A;B;C;D");如果赋了一个选项列表里不存在的值,控件会显示为空,看起来就是"不生效"。

4. 若目的是设默认值,优先用控件【值-脚本】。官方控件文档说明:【值-脚本】通过 Iscript 脚本的返回值配置控件的值;下拉框/单选框类控件直接 return "A" 即设为默认选中(多值用分号连接)。这比在动作脚本里 setValue 更可靠,PC 与手机端行为一致。

5. 手机端可用性检查。控件通用属性中"手机可用"默认勾选,手机端才会显示该控件;另可检查手机端浏览器是否有脚本报错(PC 端 F12 控制台同样能复现脚本错误),官方调试指引见:http://docs.myapps.cn/developer-manual/debug/

参考文档:
http://docs.myapps.cn/iscript-guid/functions/curdoc-functions/
http://docs.myapps.cn/developer-manual/form-config/controls/

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-9-27 04:10

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表