From 0cb784fcf1769ceeb0ee44fa87a22c8f3d51da01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Kervella?= Date: Fri, 6 Oct 2017 00:50:13 +0000 Subject: [PATCH] Empty label dans le placeholder + bind (''->empty value) --- machines/templatetags/bootstrap_form_typeahead.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/machines/templatetags/bootstrap_form_typeahead.py b/machines/templatetags/bootstrap_form_typeahead.py index de7869d8..ac22185e 100644 --- a/machines/templatetags/bootstrap_form_typeahead.py +++ b/machines/templatetags/bootstrap_form_typeahead.py @@ -73,6 +73,7 @@ def bootstrap_form_typeahead(django_form, typeahead_fields, *args, **kwargs): f_value.widget = TextInput( attrs={ 'name': 'typeahead_'+f_name, + 'placeholder': f_value.empty_label } ) form += render_field( @@ -124,13 +125,16 @@ def typeahead_full_script( f_name, f_value ) : ').bind(\n' + \ '"typeahead:select", ' + \ typeahead_updater( f_name ) + '\n' + \ + ').bind(\n' + \ + '"typeahead:change", ' + \ + typeahead_change( f_name ) + '\n' + \ ')\n' + \ '});\n' return render_tag( 'script', content=mark_safe( js_content ) ) def reset_input( f_name, f_value ) : - return '$("#'+input_id(f_name)+'").val("'+f_value.empty_label+'");' + return '$("#'+input_id(f_name)+'").val("");' def typeahead_choices( f_value ) : return 'var choices = [' + \ @@ -179,5 +183,11 @@ def typeahead_updater( f_name ): return 'function(evt, item) { ' \ '$("#'+hidden_id(f_name)+'").val( item.key ); ' \ 'return item; ' \ - '}' + '}' +def typeahead_change( f_name ): + return 'function(evt) { ' \ + 'if (evt.currentTarget.value === "") {' \ + '$("#'+hidden_id(f_name)+'").val(""); ' \ + '}' \ + '}'