2012-11-24 77 views
4

我在Django中使用了Crispy-Form和Bootstrap。它工作得很好。 現在,我想有一個字段只顯示另一個字段有輸入。 基本上我有一個multpile select list叫做A visible,而text field,B,隱藏。 一旦用戶關注/選擇A中的一個或多個值,B應該變爲可見。如果沒有人被選中,它應該變得不可見。Django香脆形式,隱藏/顯示模板中的字段

cripsy形式有這個功能還是寫JS的可能性? 或者我必須在表單呈現的html頁面中寫入JS?

ciao

回答

3

我做了一次類似的事情。我爲最初想要隱藏的輸入分配了一個「隱藏」類。這可以通過在Div中嵌套字段並分配css_class來完成。請參閱http://django-crispy-forms.readthedocs.org/en/d-0/layouts.html#universal-layout-objects

然後在發生某些操作時使用javascript刪除「隱藏」類。

如果你決定使用jQuery,您可以使用下面的功能: $( 「輸入[名稱= 'a_hidden_​​field']」)removeClass( '隱藏')

+0

OK,到目前爲止,我所做的是編寫Jquery函數。但是,如果脆皮形式有可能根據輸入值隱藏/顯示字段,我會感到很高興。 – EsseTi

+1

如果我理解正確,那麼我認爲這是不可能的。我相信你需要依靠javascript或jQuery來隱藏和顯示字段。你可以做的是JavaScript查找注意輸入值,並相應地顯示字段。這樣做的一個用例是,如果你有單選按鈕,你可以根據選擇哪個單選按鈕來顯示特定的字段。所有其他類型的輸入也是如此。 – Teisman