1

我正在尝试从主页(背景)中的 jquery 脚本位置访问对话框中的输入元素,但我无法这样做。当我双击主页中的帐单地址字段时,会弹出此对话框。

请让我知道如何从主页访问对话框中的表单元素?

编辑:

实际上,当加载联系页面详细信息页面时,您不会找到 ID 为 con19country 的字段,但只有在您双击邮件地址后,该字段才会在 DOM 中可用。此外,包含在双击邮寄地址时变为可见的字段的 div(id=InlineEditDialog) 在 HTML 中也是灰色的。在此处查看图片:http: //i.stack.imgur.com/7cdd4.jpg

再次编辑:

我终于能够访问对话框了..

    j$("[id*=_ilecell]").bind('dblclick', function(){
        var elementID = j$(this).attr('id');
        if (!sfdcPage.editMode)
        sfdcPage.activateInlineEditMode();

        if (!sfdcPage.inlineEditData.isCurrentField(sfdcPage.getFieldById(elementID)))
        sfdcPage.inlineEditData.openField(sfdcPage.getFieldById(elementID));
        stateCountryAutocomplete();
    });
});

您还可以参考此博客以获得更多帮助:http ://blog.force365.com/2012/07/30/ui-tips-and-tricks-country-list/

问候山姆

4

1 回答 1

1

您可以在您选择的浏览器中轻松使用 Firebug(或任何其他开发人员工具)来学习这些内容。

在这个例子中,BillingStreet 可以通过$('#acc17street').html()

萤火虫示例

但不要害怕,有已知标准字段 ID 的编译列表。例如在这里滚动一下:http: //phollaio.tumblr.com/post/22058016777/how-to-obtain-a-field-id并考虑为这个人留下一个很好的评论,这样它看起来不像我偷了他在这个问题上的辛勤工作没有任何回报;)


编辑 :) 你到底在追求什么?你想捕捉这个盒子的内容吗?还是一般的地址详细信息?或者点击确定后做些什么?我认为当您将鼠标悬停在地址字段上时,您必须检查可见的功能。

<td 
onmouseover="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.mouseOverField(event, this);" 
onmouseout="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.mouseOutField(event, this);" 
onfocus="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.mouseOverField(event, this);" 
ondblclick="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.dblClickField(event, this);" 
onclick="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.clickField(event, this);" 
onblur="if (window.sfdcPage && window.sfdcPage.hasRun) sfdcPage.mouseOutField(event, this);" id="con19_ilecell"
class="dataCol col02 inlineEditWrite">
    <div id="con19_ileinner">2335 N. Michigan Avenue, Suite 1500<br>Chicago, IL 60601, USA<br> </div>
</td>

尝试查找此 sfdcPage 的定义,如果您可以使用“无论他们最初在做什么+您的行为”来覆盖某些功能?它是一个从原型构造的对象DetailPage,您可以在/jslibrary/(some timestamp)/sfdc/main.js

于 2012-11-08T20:16:46.910 回答