【问题标题】:Triggering Dynamic Action on JavaScript fill在 JavaScript 填充上触发动态操作
【发布时间】:2013-02-27 21:56:38
【问题描述】:

我正在 Apex 4.1 中开发表单。我有地址查找字段,它使用 Javascript 连接到地址数据库并将地址行粘贴到单独的字段中(地址 1、地址 2、城镇、邮政编码)。

在同一页面中,我的报告显示了我们数据库中的客人记录,如果找到匹配项(我们的客人数据库中已经存在的地址),它就会显示出来。我在页面上几乎没有动态操作,部分刷新正在更新报告中的结果。因此,如果有人输入 last_name, 'onChange',它将查询我们的客人数据库并更新结果。

如果我从 Javascript 动态填充地址字段,我应该如何或选择哪个事件来触发部分报告刷新?因此,地址查找机制正在返回并将地址粘贴到字段中,并更改字段的状态,但 Apex 不会将其作为“onChange”进行选择。如果我专注于字段和离开字段,那么它会正确触发脚本。

任何帮助,不胜感激。截止日期快到了!

【问题讨论】:

    标签: javascript jquery oracle oracle-apex


    【解决方案1】:

    通过 javascript 或 jQuery 更改项目时,不会触发任何更改事件。然而,具有“设置值”动作的动态动作和在“更改”时触发的动作将相互触发,即使它们是幕后的 javascript。
    由于您没有使用动态操作,因此您需要自己触发更改事件。当您使用新值设置项目时,触发它。 例如,使用 jQuery:

    $("#P1_LAST_NAME").val(lNewValue).change();
    

    【讨论】:

    • 我正在使用外部 API 来检索地址详细信息,这使得“监听”更改变得非常困难,因为值没有被保存到会话状态,直到代码中的某些东西被唤醒并说'哦,该字段中有新数据,我需要根据当前地址验证它......'我需要找到一些东西......
    • 但是您正在通过该 API 检索数据。你不是通过javascript来做这个吗?如果是这样,那么您确实知道某些字段何时会发生更改,因为您可能必须设置这些或在某处提供它们?
    • 很遗憾没有……这里只引用了外部 js 链接。在初始设置期间,您选择要填充的字段,它会为您完成所有工作......
    • 这很烦人。 API 是否为您提供了任何可以挂钩的内容,例如成功回调?它是一个自己的api吗?您总是可以查看实际的 js 文件,看看是否有任何可以挂钩或覆盖的内容。如果没有这些选项中的任何一个,我想你很不走运,除了在我看来,奇怪或愚蠢的解决方案,比如使用计时器......
    猜你喜欢
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    • 2017-06-28
    • 2022-12-19
    • 1970-01-01
    • 2019-08-10
    相关资源
    最近更新 更多