Chosen: рд╢реВрдиреНрдп-рдЪреМрдбрд╝рд╛рдИ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдзрд╛рди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 30 рдЬрдире░ 2012  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: harvesthq/chosen

рдореБрдЭреЗ рдЪреБрдирд╛ рдЧрдпрд╛ рдкрд╕рдВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдЬрд╛рдХреНрд╕ рдФрд░ рдЫрд┐рдкреЗ рд╣реБрдП рдкреИрдирд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдЪреБрдирд╛ рдЧрдпрд╛ рд╢реВрдиреНрдп рдЪреМрдбрд╝рд╛рдИ рдХреЗ рд╕рд╛рде рдЪрдпрди рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдирд╛рд░рдХреАрдп рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛ рд░рд╣реА рд╣реИрдВ, рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЪрдпрди рд╕реЗ рдкрд╣рд▓реЗ рдЪреМрдбрд╝рд╛рдИ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред

рдореИрдВрдиреЗ рдХрдо рд╕реЗ рдХрдо рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реА рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддреА рд╣реИ (рдпрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ)ред

Chosen.prototype.set_up_html рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, "this.f_width = this.form_field_jq.outerWidth ();" рдХреЗ рдмрд╛рдж, рдЬреЛрдбрд╝реЗрдВ:

  if (this.f_width==0) this.f_width = this.form_field_jq.css("width");

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рддрднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдЪреМрдбрд╝рд╛рдИ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рд╕реЗрдЯ рд╣реЛред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИред рдПрдХ рдмреЗрд╣рддрд░ рдлрд┐рдХреНрд╕ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдо рдЬреЛрдбрд╝рд╛ рд╣реИ:

.chosen-container
{
    width: 100% !important;
}

рд╕рднреА 14 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

#92 рдХрд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯред

рдореБрдЭреЗ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдлрд┐рдХреНрд╕ рдкрд░ рдХрд░рдирд╛ рдерд╛:
рдЕрдЧрд░ (/px/.test(this.form_field_jq.css("width"))){
this.f_width = this.form_field_jq.css("width").replace("px", "");
} рдЕрдиреНрдпрдерд╛ {
this.f_width = this.form_field_jq.css ("рдЪреМрдбрд╝рд╛рдИ");
}
рдЪреВрдВрдХрд┐ this.form_field_jq.css("width"); рдЕрдВрдд рдореЗрдВ px рдХреЗ рд╕рд╛рде рдЪреМрдбрд╝рд╛рдИ рд▓реМрдЯрд╛ рд░рд╣рд╛ рдерд╛

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдФрд░ рдпрд╣ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

this.f_width = this.form_field_jq.outerWidth (); // рдЗрд╕ рд▓рд╛рдЗрди рдХреЗ рддрд╣рдд рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдХреЛ Selected.jqeury.js рдкрд░ рдЬреЛрдбрд╝реЗрдВ

  if (this.f_width==0){ 
      var cloneObj= this.form_field_jq.clone();
      cloneObj.removeAttr('id');
      $(document.body).append(cloneObj);
      var w = cloneObj.width();
      cloneObj.remove();
      this.f_width=w;
  }

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдо рдЬреЛрдбрд╝рд╛ рд╣реИ:

.chosen-container
{
    width: 100% !important;
}

рдзрдиреНрдпрд╡рд╛рдж рдлреИрдмрд┐рдпреЛрдбреБрдХ! рдЪреБрдиреЗ рд╣реБрдП рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ!

рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рдЪреМрдбрд╝рд╛рдИ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЬрдм рдЖрдк рдЪреБрдирд╛ рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЗрд╕реЗ рдареАрдХ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

$(".chosen-select").chosen({ width: '100%' }); // any acceptable CSS width will work

рдЕрд╕рд▓ рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЪреБрдиреЗ рд╣реБрдП рддрддреНрд╡реЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЗрдУ рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╣реИрдВрдбрд▓рд░ рдмрдирд╛рдпрд╛ рд╣реИ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рд╕рднреА рдХреА 100% рдЪреМрдбрд╝рд╛рдИ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рдореЗрд░реЗ рд▓рд┐рдП рдЬрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИред рднрд▓реЗ рд╣реА рдореИрдВ рдЪреМрдбрд╝рд╛рдИ рдХреЛ рдЕрдкрдиреЗ рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рдерд╛ред

рдзрдиреНрдпрд╡рд╛рдж @fabioduque рдЗрд╕рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд┐рдпрд╛!

@pfiller , рдзрдиреНрдпрд╡рд╛рдж! рдЬрд┐рд╕рдиреЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ред

рдРрд╕рд╛ рдХрднреА-рдХрднреА рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ? :(

рдореИрдВрдиреЗ рд╕реАрдПрд╕рдПрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЙрди рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдЪреБрдирд╛ рдерд╛ (рдФрд░ рдирдП рд╡рд┐рдЪрд╛рд░ рдмрдирд╛рддреЗ рд╕рдордп рдЕрдиреНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ)ред рддреЛ рд╕реАрдПрд╕рдПрд╕ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдзрдиреНрдпрд╡рд╛рдж @fabioduque

рдореИрдВ рдЕрдкрдиреЗ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд╕рд╢рд░реНрдд рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рдерд╛ ... рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЪреМрдбрд╝рд╛рдИ 0px рдкрд░ рд╕реЗрдЯ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде ... init рдХреЗ рдмрд╛рдж рднреА (рдЬрд┐рд╕реЗ рдореИрдВ chosen:ready рд╕рд╛рде рдЪреБрдиреЗ рд╣реБрдП рдлрд╝реАрд▓реНрдб рдХреЛ рдХрддрд╛рд░рдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА init рд╣реИ рдФрд░ рдореИрдВ рдорд╛рддрд╛ рдкрд┐рддрд╛ div рдЫрд┐рдкрд╛рдиреЗ) ... рд▓реЗрдХрд┐рди рд╡реИрд╕реЗ рднреА, рдЗрд╕ рдЬрдм рдореЗрд░реЗ jQuery рдХреЛрдб рд░рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ dIV рддрддреНрд╡ рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ chosen:updated

// This is the original select field
$field = $( '#' + field );

// This is the select field wrapper that I hide (just shown for reference)
$( '.fieldset-' + field ).show();

// Chosen container ID will be original select element ID + _chosen
var $chosen_container = $( '#' + field + '_chosen' );
if( $chosen_container && $chosen_container.width() === 0 ){
    $chosen_container.css( 'width', '100%' );
}

$field.trigger( 'chosen:updated' );

рдЕрдЧрд░ рдХрд┐рд╕реА рдФрд░ рдХреЛ рдЕрднреА рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рддреЛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдЖрдк $(.chosen-select").chosen() рдХреЛ рдХрдм рдХреЙрд▓ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореЗрд░реЗ рдкрд╛рд╕ рдкреЗрдЬ рд▓реЛрдб рдкрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреА рдПрдХ рд╕реВрдЪреА рдереА, рдЬрдм рдореИрдВрдиреЗ .chosen() рдХреЙрд▓ рдХреЛ рд╕реВрдЪреА рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд▓реЗ рдЬрд╛рдпрд╛ рддреЛ рдпрд╣ рдЪреМрдбрд╝рд╛рдИ рдХреЛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рдерд╛, рдФрд░ рд╢реВрдиреНрдп рдЪреМрдбрд╝рд╛рдИ рдирд╣реАрдВред рдЬрд┐рди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдореИрдВрдиреЗ рдКрдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдерд╛, рд╡реЗ рдХреБрдЫ рдбреЗрдЯрд╛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рдереЗ рдФрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдбреЛрдо рдСрдкрд░реЗрд╢рди рдХрд░ рд░рд╣реЗ рдереЗред

рдореЗрд░реЗ рдкрд╛рд╕ 2 рдЦреЛрдЬ рдЖрдЗрдХрди рдХреНрдпреЛрдВ рд╣реИрдВ, рдореИрдВрдиреЗ рдЙрдкрд░реЛрдХреНрдд рджреЛрдиреЛрдВ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА-
Screenshot from 2019-08-23 00-34-17

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

engintekin picture engintekin  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

SFPink picture SFPink  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

zerocrates picture zerocrates  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

blankhang picture blankhang  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

raggzy picture raggzy  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ