Изображение кнопки для модуля маркетолога sitecore - PullRequest
2 голосов
/ 13 июля 2011

Я хочу изменить кнопку отправки модуля Web Forms for Marketers с изображением в Sitecore.

Заранее благодарен

Ответы [ 5 ]

2 голосов
/ 16 июля 2011

Вы можете изменить кнопку, обновив содержимое следующего файла:

\ sitecore modules \ Web \ Веб-формы для маркетологов \ Control \ SitecoreSimpleFormAscx.ascx

Заменить

<wfm:FormSubmit ID="submit" runat="server" Class="scfSubmitButtonBorder"/>

с вашим собственным пользовательским элементом управления (который может содержать Image / LinkButton / что угодно)

1 голос
/ 13 апреля 2012

Вы можете изменить стиль кнопки в Default.css.Используйте background-image для добавления изображения.

Ниже приведен пример использования изображения в качестве фона для кнопки Отправить в WFFM:

.scfSubmitButtonBorder
{

    background-image: url(/images/bg_button.png);
    padding-left: 5px;
    float: right;
    margin-bottom: 10px;
}

.scfSubmitButtonBorder input
{

    border: none;
    padding: 0 5px 0 0;
    color: white;
    font: 14px/14px FrutigerRoman, Arial !important;
    width: 100px;
    height: 30px;
    background-image: url(/images/bg_button.png);
    background-position: right -30px;
    background-color: transparent;
    cursor: pointer;
}
1 голос
/ 13 июля 2011

Похоже, вы пытаетесь изменить кнопку отправки на <input type="image" />.Я не нашел способ сделать это с WFFM.Вы можете стилизовать кнопку отправки или экспортировать форму в ASCX и внести изменения в изображение самостоятельно.

С CSS-стилем <input type="submit" />.

можно сделать совсем немного.http://www.456bereastreet.com/lab/styling-form-controls-revisited/submit-button/

0 голосов
/ 07 сентября 2011

Вот как я это сделал.

Сначала создайте пользовательский элемент управления:

namespace Sitecore.Custom.Controls
{
    public class ImageSubmitButton : Sitecore.Form.Web.UI.Controls.SubmitButton
    {
        public string ImageUrl { get; set; }

        protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
        {
            if (string.IsNullOrEmpty(ImageUrl) == false)
            {
                writer.AddAttribute("type", "image");
                writer.AddAttribute("src", ResolveUrl(ImageUrl));
            }
            // This won't overwrite our explicit type="image"
            base.AddAttributesToRender(writer);
        }
    }
}

Экспортируйте форму как ASCX в sitecore, используйте Центр разработчика для создания нового Sublayout и скопируйте экспортированный код ASCX в этот файл. Сначала зарегистрируйте новый префикс

<%@ Register TagPrefix="ctrl" Namespace="Sitecore.Custom.Controls" Assembly="<AssemblyName>" %>

Наконец, измените

  <cc0:submitbutton runat="server" onclientclick="$scw.webform.lastSubmit = this.id;" text="Submit" validationgroup="..." cssclass="..." id="..." onclick="OnClick" >
  </cc0:submitbutton>

до

<ctrl:ImageSubmitButton ImageUrl="~/imgs/button.png" runat="server" OnClientClick="$scw.webform.lastSubmit = this.id;"
    Text="Submit" validationgroup="..." cssclass="..." id="..."
    OnClick="OnClick"></ctrl:ImageSubmitButton>

Наконец, замените форму в вашем элементе на подслой.

0 голосов
/ 13 июля 2011

Полагаю, вы говорите о модуле Web Forms for Marketers, не так ли? Это не ясно из вашего первоначального вопроса ...

В любом случае, в конструкторе форм вы можете выбрать кнопку отправки, и вы увидите ее свойства в левой части. Среди различных свойств самым первым является поле для редактирования, называемое «Имя кнопки». Поместите туда нужный текст для кнопки Отправить.

...