gpt4 book ai didi

dynamics-crm-2011 - 当按下功能区按钮时,我怎么知道哪个表单控件具有焦点?

转载 作者:行者123 更新时间:2023-12-04 07:50:49 25 4
gpt4 key购买 nike

有一个自定义 JS 函数,当在表单上下文中按下功能区按钮时,该函数会被调用。在我的自定义 JS 函数中,我需要知道在按下功能区按钮之前哪个表单字段具有焦点。我尝试了 2 种方法(如下)但没有成功。有什么方法可以可靠地做到这一点?

方式#1

根据 this ,我可以获得我想要的控件作为参数传递给我的 JS。我试过同时使用 PrimaryControlIdPrimaryControl 参数。

<JavaScriptFunction FunctionName="OnCustomBtnFunc" 
Library="$webresource:myJSfile.js">
<CrmParameter Value="PrimaryControlId" />
<CrmParameter Value="PrimaryControl" />
</JavaScriptFunction>

对于这两者,我都得到了一个传递给 OnCustomBtnFunc() 的对象,但它似乎无法让我确定在按下功能区按钮之前哪个表单控件具有焦点。

方式#2

我调用Xrm.Page.ui.getCurrentControl() .这适用于某些类型的表单字段,但不适用于其他类型,例如如果它是一个字符串字段,它可以工作,但我得到 null 进行查找。

最佳答案

您不会喜欢这个答案,但您可以使用 JQuery 快速获取表单中的每个控件并为其分配一个 OnBlur 事件。此事件可以将 ID 或控件本身分配给全局变量,您可以让您的功能区访问它(从不同的范围触发)。

人们不喜欢这种方法,因为变量的上下文范围不同,而且它涉及玩纯 HTML 的“不受支持”功能。但是,如果您只问“如何”而不是“我们应该”的问题,那么这是您“如何”执行此操作的简单方法。

关于dynamics-crm-2011 - 当按下功能区按钮时,我怎么知道哪个表单控件具有焦点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13435199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com