Salesforce 获取所选查找项的id

Salesforce 获取所选查找项的id,salesforce,visualforce,Salesforce,Visualforce,我正在构建一个Visualforce页面,其中需要填写表单。表单中有一个查找字段用于查找帐户。完成此操作后,应该进行AJAX调用以更新其他内容。所选项目的id必须传递到此JS函数 输入字段的代码如下所示: <apex:inputField value="{!Account}" id="acct" onchange="doSomething(this.value);" /> 因此,在上面的代码中,doSomething()必须获取id作为参数。在当前表单中,此.value包含

我正在构建一个Visualforce页面,其中需要填写表单。表单中有一个查找字段用于查找帐户。完成此操作后,应该进行AJAX调用以更新其他内容。所选项目的id必须传递到此JS函数

输入字段的代码如下所示:

<apex:inputField value="{!Account}" id="acct" onchange="doSomething(this.value);" />  


因此,在上面的代码中,
doSomething()
必须获取id作为参数。在当前表单中,
此.value
包含所选项目的名称。我可以获取id吗?如果可以,如何获取?

使用Firebug或类似工具检查生成的标记。每个查找字段由几个输入字段组成(一个可见,其余隐藏)

(在我的示例中,我明确地将
id
属性放在顶部的所有标记上(顶点:页面、表单块、部分,最后是输入字段。如果不这样做,您将获得自动生成的名称)

因此,您需要做的是:

  • this
    转到父标记(
    this.parentNode
    当然应该在普通DOM中工作)
  • 并获取Id以
    acct\u lkold

  • 可能“”也会起作用?

    使用Firebug或类似工具检查生成的标记。每个查找字段由几个输入字段组成(一个是可见的,其余是隐藏的)

    (在我的示例中,我明确地将
    id
    属性放在顶部的所有标记上(顶点:页面、表单块、部分,最后是输入字段。如果不这样做,您将获得自动生成的名称)

    因此,您需要做的是:

  • this
    转到父标记(
    this.parentNode
    当然应该在普通DOM中工作)
  • 并获取Id以
    acct\u lkold
  • “可能”也会起作用?

    试试这个:

    
    函数doThis(obj)
    {
    警报(对象id);
    }
    
    如果需要选定的对象id-请使用actionSupport:

    
    函数doThis(param)
    {
    警报(参数);
    }
    
    最后,如果您不能(!)使用actionSupport,请改用actionFunction:

    
    函数doThis(param)
    {
    警报(参数);
    }
    
    试试这个:

    
    函数doThis(obj)
    {
    警报(对象id);
    }
    
    如果需要选定的对象id-请使用actionSupport:

    
    函数doThis(param)
    {
    警报(参数);
    }
    
    最后,如果您不能(!)使用actionSupport,请改用actionFunction:

    
    函数doThis(param)
    {
    警报(参数);
    }
    
    好的,我现在通过不同的渠道发现,像这样的变通方法确实是唯一的解决方法。我现在已经实现了类似的东西(略有不同,但想法相同)。好的,我现在通过不同的渠道发现,像这样的变通方法确实是唯一的方法。我现在已经实现了类似的方法(略有不同,但想法相同)。我认为这将获得输入元素的id,而不是所选对象的id。第二个选项可能有效,但有一些原因(我不记得了)我们不能使用actionSupport…但这是一个不错的选择。你可以直接使用actionFunction。我认为这将获得输入元素的id,而不是所选对象的id。第二个选项可能有效,但有一些原因(我不记得了)我们不能使用actionSupport…但这是一个很好的选择。您可以使用actionFunction