在Salesforce中,如果我将文本字段绑定到VisualForce页面,那么有什么方法可以将文本字段中的回车符转换为HTML <br/>
标记?
例如从这样的事情开始:
<apex:page standardController="Case">
<apex:pageBlock title="Test">
<p>{!case.Description}</p>
</apex:pageBlock>
<apex:detail relatedList="false" />
</apex:page>
Run Code Online (Sandbox Code Playgroud)
...如果描述很长并且有很多回车符,那我该怎么做HTML-ify呢?
(我想这是一个相当容易的问题,我相信我可以谷歌它,但为了让Salesforce社区继续在这里,我想我们需要一些简单的问题.)
编辑:( Bounty添加试图产生一些兴奋)
我希望能够在Salesforce网站页面上为当前会话读取/写入一些变量。
我有一个使用Salesforce网站构建的网站,我需要在所有页面上存储/检索一些值(考虑到我正在构建类似于购物车的东西)。但是,我找不到任何有关如何向会话(匿名用户)读写变量的好例子。
我将Visualforce页面与Apex中内置的多个控制器一起使用。
问候
我正在尝试开发一个 Visualforce 自定义组件,它是一个实体选择器。此自定义组件显示有助于浏览某些记录的 UI。可以选择一条记录,我想从组件或其控制器外部获取它。
我已经查看了带有assignTo错误的标准salesforce绑定,它不是双向的......
希望有人可以帮助我..谢谢
在控制器中我有两个值:
public List<String> StringValue {get; set;}
public List<String> ListValue {get; set;}
Run Code Online (Sandbox Code Playgroud)
ListValue在构造函数中初始化,并添加了几个字符串.在这一点上,我可以在VisualForce页面中使用{!StringValue}和{!ListValue [1]}来引用它们.特别是列表一个是焦点 - 我甚至可以添加伪常量(getters)作为索引,使{!ListValue [nameIndex]}成为有效的引用.
但是,在尝试设置列表值而不是简单的字符串值时,我遇到了异常.
<apex:param value="123" assignTo="{!ListValue[1]}" />
Run Code Online (Sandbox Code Playgroud)
例外是 java.lang.ClassCastException: java.lang.String cannot be cast to common.formula.FormulaFieldReference
我想我理解问题的基础 - Salesforce无法创建包含索引参数的setter引用(意味着只能引用带有单个参数的setter).
有什么方法可以解决这个问题,还是只需要创建大量的ListValue1,ListValue2变量和相关代码?
我刚刚开始为我的公司在Salesforce中进行适度的Web开发工作,我正在寻找对部署过程的一些反馈/洞察力.现在看起来我们将使用视觉力和顶点进行大量的定制工作.我想知道的是,如果我在生产组织(数据或元数据)中搞砸某些东西,是否有办法回滚到仍然有效的我的组织的快照或以前发布的版本?使用平庸的开发工具,我担心当出现错误时,我将无法快速解决问题.
我在这里阅读有关设置源代码控制的不同方法: 多个开发人员如何有效地在一个force.com应用程序上工作?
但是我没有发现任何人走过基本上恢复变更集或改变分支的过程.对salesforce的保护是否足够好,我不必担心生产中的错误?我不应该担心还原变更集吗?
我正在尝试开发一个Visualforce自定义组件,该组件从Visual Force页面获取属性。我需要在控制器的构造函数中访问该属性,以便可以从数据库中获取一些记录,并且需要在组件中显示这些记录。但是问题是我没有在Controller中获得属性值。
请参阅下面的代码以清楚地了解问题。
控制器:
public with sharing class AdditionalQuestionController {
public String CRFType {get;set;}
public AdditionalQuestionController () {
system.debug('CRFType : '+CRFType);
List<AdditoinalQuestion__c> lstAddQues = [Select AddQues__c from AdditoinalQuestion__c wehre CRFType = :CRFType];
system.debug('lstAddQue : '+lstAddQue);
}
}
Run Code Online (Sandbox Code Playgroud)
零件 :
<apex:component controller="AdditionalQuestionController" allowDML="true">
<apex:attribute name="CRFType" description="This is CRF Type." type="String" required="true" assignTo="{!CRFType}" />
<apex:repeat value="{!lstAddQue}" var="que">
{!que}<br />
</apex:repeat>
</apex:component>
Run Code Online (Sandbox Code Playgroud)
VisualForce页面:
<apex:page >
<c:AdditionalQuestionComponent CRFType="STE" />
</apex:page>
Run Code Online (Sandbox Code Playgroud)
谢谢,Vivek
在Apex Unit测试中,为什么MyConrtoller myCont = new MyController(StandardContoller); 电话设置当前页面?
例如,如果我有这个页面:
<apex:page standardController="DB_Object__c" extensions="MyExtension">
<apex:form id="detail_list">
<apex:detail />
<apex:actionStatus id="readStatus">
<apex:facet name="start">
Loading, please wait...
</apex:facet>
<apex:facet name="stop"><apex:outputPanel >
<apex:commandButton action="{!readData}"
value="Update Data"
rerender="detail_list"
status="readStatus"/>
{!remainingRecords}</apex:outputPanel>
</apex:facet>
</apex:actionStatus>
</apex:form>
</apex:page>
Run Code Online (Sandbox Code Playgroud)
如果我的单元测试创建了这个:
DB_Object__c dbObj = new DB_Object__c();
dbObj.Name = 'test';
dbObj.Setting = 'aSetting';
insert dbObj;
Test.setCurrentPageReference(Page.Demo);
ApexPages.StandardController sc = new ApexPages.StandardController(dbObj);
MyExtension myExt = new MyExtension(sc);
Run Code Online (Sandbox Code Playgroud)
为什么ApexPages.currentPage().getParameters().get('id');
失败?我要做:
ApexPages.currentPage().getParameters().put('id',dbObj.id);
Run Code Online (Sandbox Code Playgroud)
如果它没有对它做任何事情,那么传递dbObj
给StandardController
它的重点是什么?您是否在空白对象中发送的意图和扩展使用此对象?标准控制器和单元测试似乎没有很多文档......
谢谢!
我在gobal页脚组件中的代码 -
<div id="copyright">
© {!$Label.copyright}
</div>
Run Code Online (Sandbox Code Playgroud)
它显示在页面中"© Copyright 2012 "
我是Salesforce的新手.我只是想修改文本
"© Copyright 2013 "
Run Code Online (Sandbox Code Playgroud)
取代2012年我想用2013 ...
我试过了什么?
$Label
是全球变量搜索版权...如果我错过了一些基本的部分来检查,请帮助我!
谢谢!!
我在jsp中使用c:if,c:when JSTL标签。但是我不知道视觉力页面是否可以使用类似的功能。仅举例来说,我为jsp提供了示例代码。-
<h1>A Demo conditional section code</h1>
<c:choose>
<c:when test="${param.colorField == 'red'}">
<table border="0" width="150" height="50" bgcolor="#ff0000">
<tr><td>It is red</td></tr>
</table>
</c:when>
<c:when test="${param.colorField == 'blue'}">
<table border="0" width="150" height="50" bgcolor="#0000ff">
<tr><td>It is blue</td></tr>
</table>
</c:when>
<c:when test="${param.colorField == 'green'}">
<table border="0" width="150" height="50" bgcolor="#00ff00">
<tr><td>Green table</td></tr>
</table>
</c:when>
<c:otherwise>
<table border="0" width="150" height="50" bgcolor="#000000">
<tr><td>No colour changed</td></tr>
</table>
</c:otherwise>
</c:choose>
<br/>
and other codes....
Run Code Online (Sandbox Code Playgroud)
我在vf页面中缺少这种页面阻止准备。
我有一个自定义对象MyCustomObj__c
,其中有一个名为"ContactData"的字段.
我试图使用以下apex方法将记录插入自定义对象.它给出了一个错误:
Invalid ID
Run Code Online (Sandbox Code Playgroud)
该值Hari
已存在于"联系人"列表中.
顶点代码:
public static String saveData(){
MyCustomObj__c newObj = new MyCustomObj__c();
newObj.contactData__c = 'Hari';
insert newObj;
return "success";
}
Run Code Online (Sandbox Code Playgroud)
如何插入一行?