2017-03-27 61 views
0

我正在用松脆的形式挣扎按钮。而不只是默认按钮的我想有内部将图标添加到Django脆皮表单提交按钮

图标我目前使用的形式是像

class MyForm(forms.ModelForm): 

helper = FormHelper() 
helper.layout = Layout(
    Div(
     Div(PrependedText('source_text', '<span class="fa fa-user"></span>'), css_class='col-md-6'), 
     Div(PrependedText('destination_text','<span class="fa fa-flag-checkered"></span>'), css_class='col-md-6'), 
     css_class='row-fluid'), 
    Div(
     Div(PrependedText('departure', '<span class="fa fa-clock-o"></span>'), css_class='col-md-3'), 
     Div('departure_delta', css_class='col-md-2'), 
     Div(Submit('submit', "Neue Fahrt starten", css_class="btn"), css_class="col-md2"), 
     css_class='row-fluid'), 
) 
helper.form_show_labels = False 
helper.form_id = 'id_travelshare' 

class Meta: 

    model = MyModel 
    fields = ['source', 'source_text', 'destination', 
       'destination_text', 'departure', 'departure_delta'] 

    widgets = { 
     'source': forms.HiddenInput(), 
     'destination': forms.HiddenInput(), 
     'departure' : forms.DateTimeInput(attrs={'class':'datetimepicker'}), 
    } 

我要的是里面的图标的按钮。我没有找到一个这样的例子。也许有人有一个。

类regads

迈克尔

回答

1

您可以为按钮添加一个CSS类到你的提交按钮,然后指定一个背景图像与此类:

Submit('submit', "Neue Fahrt starten", css_class="btn icon-button") 

# in your .css file: 
.btn.icon-button { 
    background-image: url(../../icons/button-arrow-right.png); 
} 
+0

谢谢!我更想考虑在按钮上添加一个fontawesome图标,如 Checkout mbieren

+0

对不起,我没有那么具体 – mbieren

+0

这并不容易,因为你不能通过content()属性将HTML内容添加到CSS中(例如使用.icon-button :之前)。我会通过创建一个'ShopSubmit()'子类来查看子类化'Submit()',该子类使用一个不同的button.html模板将图标添加到内容中。请参阅[链接](https://django-crispy-forms.readthedocs.io/en/latest/layouts.html#overriding-layout-objects-templates) – dirkgroten

0

我可以与生活普通链接并用JS提交表单。现在,它看起来像:

<a href="#" class="btn btn-primary"> 
     <i class="fa fa-plus" aria-hidden="true"></i> 
     Hinzufuegen 
</a> 

问候

迈克尔