Lazy Load Select2 Mulitselect

时间:2016-01-05 20:44:43

标签: php ajax wordpress lazy-loading jquery-select2

我的页面上有超过29,000个选项的巨大多选列表。我使用select2以一种形式显示它们,但因为有太多的选项,它会大大减慢页面的速度。我知道select2支持延迟加载,但我不知道如何在我的表单中实现它。

我在我的functions.php中使用此代码将选择下拉列表添加到我的表单中(仅显示几个选项,其余部分不是必需的)

 add_filter( 'submit_job_form_fields', 'frontend_add_experience_field' );

function frontend_add_experience_field( $fields) {
$fields['job']['regions1'] = array(
'label'       => __( 'Farming Areas', 'job_manager' ),
'type'        => 'multiselect',
'required'    => true,
'name' => 'regions1',
'placeholder' => 'Select A City',
'priority'    => 8,
'options'     => array(

"Abanda, AL"=>"Abanda, AL",
"Abbeville, AL"=>"Abbeville, AL",
"Adamsville, AL"=>"Adamsville, AL",
"Addison, AL"=>"Addison, AL",
"Akron, AL"=>"Akron, AL",
"Alabaster, AL"=>"Alabaster, AL",
"Albertville, AL"=>"Albertville, AL",
"Alexander, AL"=>"Alexander, AL",
"Alexandria, AL"=>"Alexandria, AL",
"Aliceville, AL"=>"Aliceville, AL",
 ));

  return $fields; }

这是我的javascript来实现select2

<script>

jQuery(function($) {
$(document).ready(function() {
 $("#regions1").select2({
      placeholder: "Search for a City",
minimumInputLength: 4,
maximumSelectionLength: 4,
width: "200px",
 });
});
});

</script>

在我的页面上看到大约有29,000个选项,延迟加载是实现select2的最佳方式,还是有更有效的方式显示结果而不会给服务器带来巨大的负担?

提前谢谢你。

0 个答案:

没有答案