我正在使用 Apex4.1,
在我的应用程序中,我有一个表格形式,其中包含以下字段,
Emp_id
Emp_name
Dept_id
这Emp_id是可更新列,它是一个选择列表 LOV 和
Emp_name是一个可更新的列,
这里我需要的是,
如果我Emp_id从 LOV 中选择,则Emp_Name应该根据在中选择的值自动存储EMP_ID,
在表格形式中,我无法像在普通形式中创建动态操作一样,任何人都可以帮助我解决这个问题吗?
谢谢你。
我正在使用 Apex4.1,
在我的应用程序中,我有一个表格形式,其中包含以下字段,
Emp_id
Emp_name
Dept_id
这Emp_id是可更新列,它是一个选择列表 LOV 和
Emp_name是一个可更新的列,
这里我需要的是,
如果我Emp_id从 LOV 中选择,则Emp_Name应该根据在中选择的值自动存储EMP_ID,
在表格形式中,我无法像在普通形式中创建动态操作一样,任何人都可以帮助我解决这个问题吗?
谢谢你。
APEX 当前不提供对表格表单项的动态操作。希望这可以在 APEX 4.2 中解决,但方向声明没有明确说明。
所以现在如果你需要这样做,你将不得不编写自己的 Javascript,使用表格表单项的唯一 ID 来操作它们(ID 看起来像“fcc_rrrr”,其中“cc”是列号,“rrrr”是行号)。有关使用这些的示例 Javascript 代码,请参阅此 SO q&q。
您需要编写的 Javascript 有点令人生畏(对于初学者来说),但需要注意的一点是,在您的情况下,您可以通过将名称嵌入到 LOV 的返回值中来避免使用 AJAX 来获取员工姓名像这样的东西:
select emp_name d, emp_id||':'||emp_name r
from employee
order by 1
这样,返回值将类似于 '123:John Smith'; 您的 Javascript 可以解析此字符串并提取“John Smith”并将其插入到同一行的 emp_name 项中。显然,您还需要解析此字符串以获得提交页面时更新数据库时需要的 emp_id 值。