2013-11-10 4 views
1

У меня есть поле города, где на inlinedit call он будет загружать данные ajax в выпадающем списке. Пожалуйста, проверьте мой код &, дайте мне знать, где я ошибаюсь. Я прочитал select2 documentationSelect2 удаленный источник на выпадающем поле

<script type="text/javascript"> 
    jQuery(function($) { 
     $('#city_id').editable({ 
      type: 'select2', 
      name: 'otmp_tx_user_details:city_id', 
      pk:"userdetailid:<?php if($student_info->userdetailid) echo $student_info->userdetailid; else echo "0";?>", 
      ajax: { 
       url: "<?php echo site_url()?>students/get_city_by_country", 
       dataType: 'json', 
       data: function() { 
        return; 
       }, 
       results: function (data) { 
        return {results: data}; 
       } 
      }, 
      url: "<?php echo site_url();?>students/inlineedit", 
      success: function(data) { 
      } 
     }); 
    }); 
</script> 

Вот мои Аякса данные из PHP файла:

$array = array(
       array("id"=>1,text=>"Dhaka"), 
       array("id"=>2,text=>"Pabna") 
); 
echo json_encode($array); 

Пожалуйста, помогите мне решить мою проблему.

ответ

1

Попробуйте оборачивать ваш объект Ajax внутри select2 объекта, например, так:

jQuery(function($) { 
    $('#city_id').editable({ 
     type: 'select2', 
     name: 'otmp_tx_user_details:city_id', 
     pk:"userdetailid:<?php if($student_info->userdetailid) echo $student_info->userdetailid; else echo "0";?>", 
     select2: { 
      ajax: { 
       url: "<?php echo site_url()?>students/get_city_by_country", 
       dataType: 'json', 
       data: function() { 
        return; 
       }, 
       results: function (data) { 
        return {results: data}; 
       } 
      } 
     }, 
     url: "<?php echo site_url();?>students/inlineedit", 
     success: function(data) { 
     } 
    }); 
}); 
+0

Спасибо за ваш ответ. Его работа сейчас. Однако, когда я набираю термин, он не работает автоматически, выберите результат. Например, я набираю «bang», тогда он должен отображать результат автоматического выбора с помощью «bangladesh», теперь он показывает только подчеркивание с результатом i.e на «bangladesh», он просто показывает подчеркивание на слове bang. Я пытаюсь улучшить свой код со следующей функцией данных. данные: функция (термин, страница) { return { термин: термин}; }, –

+0

Я рад, что у вас это работает. К сожалению, я не могу помочь вам в вашей другой проблеме, я не вижу, что происходит не так. Можете ли вы собрать [** JSFiddle **] (http://jsfiddle.net/), чтобы продемонстрировать эту проблему? В качестве дополнительной заметки я хотел бы предложить этот вопрос в качестве нового вопроса, поскольку он не связан с вашим первоначальным вопросом. –

Смежные вопросы