是否可以添加样式到一个字段在Salesforce?(Is it possible to add st

2019-07-29 01:58发布

我有一个情况我需要输入文本转换为大写。 只要我们在输入框中键入一些文本就需要把它转换为大写。

我们有以下这个CSS样式:

 style="text-transform: uppercase"

使用这种样式,文字采用的是大写自动输入所以我们并不需要做任何额外的东西,但在Salesforce没有选择添加样式到现场。

有没有办法做到这一点?

Answer 1:

不幸的是,没有一个CSS样式添加到编辑模式出现在一个标准的页面布局字段的简便方法。 不过,也有可能要探讨一些选项(如下所示)。


Visualforce

可以将样式属性添加到[inputText的]在Visualforce(http://www.salesforce.com/us/developer/docs/pages/Content/pages_compref_inputText.htm)或inputfield组件。

<apex:inputtext value="{!Widget__c.Name}" style="text-transform:uppercase;" />

要添加一个CSS类,而不是,你可以使用styleClass属性。 我相信这只会影响文本数据的显示,虽然。 为了确保值大写时保存到数据库中,使用上的JavaScript onkeyup属性(如下图)。

<apex:inputtext value="{!Widget__c.Name}" style="text-transform:uppercase;" onkeyup="var u=this.value.toUpperCase();if(this.value!=u){this.value=u;}" />

标准页面布局

选项1:在标准的页面布局中嵌入一个Visualforce页面

要做到这一点的一个标准页面布局 ,你可以创建一个Visualforce页面领域,你想对这个功能。 然而,这将显示只记录的查看。 它不会在编辑可见。

该Visualforce页面看起来像这样(其中Widget__c由你正在使用的替代的sObject):

<apex:page standardController="Widget__c">
    <apex:form id="WidgetForm">
        <apex:actionFunction name="SavePost" action="{!save}" rerender="WidgetPanel" status="str" />
        <apex:outputpanel id="WidgetPanel">
            <apex:inputtext id="WidgetName" value="{!Widget__c.Name}" style="text-transform:uppercase;" onkeyup="var u=this.value.toUpperCase();if(this.value!=u){this.value=u;}" />
            <apex:commandbutton value="Save" styleClass="btn" onclick="SavePost();" />
            <apex:actionStatus startText="Loading..." stopText="" id="str"> </apex:actionStatus>
        </apex:outputpanel>
    </apex:form>
</apex:page>

然后在页面布局,单击Visualforce Pages下方类别FieldsButtons ,并通过Visualforce页面组件拖到布局添加Visualforce页面到你的页面布局。 确保通过单击新Visualforce页面组件的右上角的扳手来配置它的高度。

选项2:使用JavaScript在一个标准的页面布局与侧边栏组件

另外,更复杂,用一个标准的页面布局工作的办法是增加一个主页组件在包含JavaScript的侧边栏。 此选项需要JavaScript(或公平理解的jQuery JavaScript库)。 然后,JavaScript的能找到的字段中,添加text-transform:uppercase; 样式,和函数绑定到keyup事件的所有输入的字符转换为大写( element.value.toUpperCase(); )。 有关此方法的更多信息,请Tehnrd的博客文章上添加一个侧边栏组件为JavaScript。 他用这种方法来显示和隐藏在标准的页面布局的按钮,但它可以进行修改,以满足您的要求。



文章来源: Is it possible to add style to a field in Salesforce?