首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在salesforce中使用pagereference从url中预填充多个选择选择列表

在salesforce中使用pagereference从url中预填充多个选择选择列表
EN

Stack Overflow用户
提问于 2012-10-24 03:13:33
回答 1查看 1.6K关注 0票数 0

在salesforce中,我正在尝试构建一个url,它将预先填充表单中的多选选择列表。基本上,您只需按下帐户上的New Meeting按钮,即可重定向到New Event。PageReference重定向返回一个PageReference实例,该实例具有包含预填充参数的url。但是,多选选择选择列表仅填充第一个选择。例如:

构建后的URL字符串:

代码语言:javascript
运行
复制
url = 'https://cs11.salesforce.com/00U/e?00NZ0000000LdLp=401%28a%29&00NZ0000000LdLp=401%28k%29';

多选选择列表的字段ID是00NZ0000000LdLp,它在上面的URL中重复,因此将所选字段填充为401(a)和401(k)

然后,重定向方法返回:

代码语言:javascript
运行
复制
return new PageReference( url );

当我单击New Meeting按钮时,将只选择401(a)。如果只是将构建URL复制并粘贴到地址栏中,则将同时选择401(a)和401(k)。为什么PageReference要剪掉数据?

EN

回答 1

Stack Overflow用户

发布于 2012-10-25 08:38:45

我认为这可能与页面引用存储url参数的方式有关。它将这些参数存储在一个映射中,这意味着如果您多次重复一个参数名称,它将被覆盖。它的作用等同于:

mapParams.put('00NZ0000000LdLp','401(a)');mapParams.put('00NZ0000000LdLp','401(k)');

您最好自己添加url参数,并执行类似于下面的操作。

PageReference引用=新PageReference(url);ref.getParmeters().put('00NZ0000000LdLp','401(a)&00NZ0000000LdLp=401(k)');

尽管上面只是一个建议。我不确定url转义将如何影响这个想法,但为了回答您最初的问题,我认为在PageReference对象中使用映射可能是您只能获得一个选定值的原因。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13037529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档