Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.02.2015, 12:31
Интересующийся
Отправить личное сообщение для Nelzz Посмотреть профиль Найти все сообщения от Nelzz
 
Регистрация: 20.10.2014
Сообщений: 14

Не показывает выделенные
Опят другая проблема. Есть страница редактирование.

Селект #country должен вернут значение из бд.

$( document ).ready(function() {
  
  $("#city").select2();

  var $ajax = $("#country");

$('#country').change(function(){
    var country = $('#country').val();
     $('#country_id').val(country);

  var formatProduct = function(data){
     return data.city;
  }
  $("#city").select2({
    ajax: {
      url: "../../ajaxdata",
      dataType: 'json',
        data: function (params) {
        return {
          country_id: country, // search term
          term: params.term
        };
      },
       processResults: function (data, params) {
        return {
          results: data.items,
        };
      },
      cache: true,
    },
      templateResult: formatProduct,
      templateSelection: formatProduct,
  });

  });


  function formatRepo (repo) {
    if (repo.loading) return repo.name;

    var markup = repo.name;

    return markup;
  }

  function formatRepoSelection (repo) {
    return repo.name || repo.name;
  }


  $ajax.select2({
    ajax: {
      url: "../../ajaxdata",
      dataType: 'json',
      delay: 250,
      data: function (params) {
        return {
          country: params.term, 
          page: params.page
        };
      },
      processResults: function (data, params) {

        params.page = params.page || 1;

        return {
          results: data.items,
          pagination: {
            more: (params.page * 30) < data.total_count
          }
        };
      },
      cache: true,
    },

    templateResult: formatRepo,
    templateSelection: formatRepoSelection,
     
  });


});


именно мешает templateSelection, если его убрать все заработает, только после выбора значение показывает пустое поля (только визуально).

Нужно чтобы он вернул и значение из бд и показывал выбраненные значение.

Как решить? Кто нибудь поможет или ткните куда нить.

Последний раз редактировалось Nelzz, 27.02.2015 в 12:35.
Ответить с цитированием
  #2 (permalink)  
Старый 27.02.2015, 12:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Давайте начнем с этого:

var $ajax = $("#country"); - хорошо, объект кеширован, но тут же:

$('#country').change(function(){
var country = $('#country').val();

Как это понимать? И почему запрос $ajax.select2 требуется дважды, неужели нельзя изменением параметра запроса дать понять серверу что запрашивается?
Ответить с цитированием
  #3 (permalink)  
Старый 27.02.2015, 13:16
Интересующийся
Отправить личное сообщение для Nelzz Посмотреть профиль Найти все сообщения от Nelzz
 
Регистрация: 20.10.2014
Сообщений: 14

Сообщение от laimas Посмотреть сообщение
Давайте начнем с этого:

var $ajax = $("#country"); - хорошо, объект кеширован, но тут же:

$('#country').change(function(){
var country = $('#country').val();

Как это понимать? И почему запрос $ajax.select2 требуется дважды, неужели нельзя изменением параметра запроса дать понять серверу что запрашивается?
Вся функция выбираешь страну и по нему город.

var country = $('#country').val();
 $('#country_id').val(country);


При выборе повторно #country другую страну он туда же пишет две значение, первый и вторую, мне нужен только одно, по этому делаю на скрытом инпуте.

все не так просто как кажется )

Вес листинг https://gist.github.com/Asetss/e1700a070990d8a766cd

Последний раз редактировалось Nelzz, 27.02.2015 в 13:28.
Ответить с цитированием
  #4 (permalink)  
Старый 27.02.2015, 13:33
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Если var $ajax = $("#country"), то тогда

$ajax.change(function(){
var country = this.value; //собственно этого и не надо, можно сразу подставить this.value в параметр запроса, без промежуточной country.

Что касается остального, то у вас вывод связанных списков, и это еще не повод на каждый из них писать отдельный запрос. Списки то ведь разные уже потому, что это разные сущности в базе, и на клиенте они должны тоже отличаться. А если они отличаются, значит и различны параметры запроса, значит и значение какого (или какой список) возвращается клиенту тоже известно.

Впрочем, если вы убеждены, что поступаете верно, то я не имею вопросов.
Ответить с цитированием
  #5 (permalink)  
Старый 27.02.2015, 13:49
Интересующийся
Отправить личное сообщение для Nelzz Посмотреть профиль Найти все сообщения от Nelzz
 
Регистрация: 20.10.2014
Сообщений: 14

Сообщение от laimas Посмотреть сообщение
Если var $ajax = $("#country"), то тогда

$ajax.change(function(){
var country = this.value; //собственно этого и не надо, можно сразу подставить this.value в параметр запроса, без промежуточной country.

Что касается остального, то у вас вывод связанных списков, и это еще не повод на каждый из них писать отдельный запрос. Списки то ведь разные уже потому, что это разные сущности в базе, и на клиенте они должны тоже отличаться. А если они отличаются, значит и различны параметры запроса, значит и значение какого (или какой список) возвращается клиенту тоже известно.

Впрочем, если вы убеждены, что поступаете верно, то я не имею вопросов.
Это код не о чем не говорит.

Вес view редактирование

https://gist.github.com/Asetss/ba6a5e5e1ecbb3609c71 это фрейм ларавел

заметьте строку https://gist.github.com/Asetss/ba6a5...file1-php-L216

Country::getCountryArray($contact->cont_country) вернет массив
само значение $contact->cont_country

и на #сity тоже самое только там поиска нету,по этому пашет.
Ответить с цитированием
  #6 (permalink)  
Старый 28.02.2015, 06:58
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ну и на что выбор пал - git или все таки свое?
Ответить с цитированием
  #7 (permalink)  
Старый 28.02.2015, 07:26
Интересующийся
Отправить личное сообщение для Nelzz Посмотреть профиль Найти все сообщения от Nelzz
 
Регистрация: 20.10.2014
Сообщений: 14

Сообщение от laimas Посмотреть сообщение
Ну и на что выбор пал - git или все таки свое?
Я пока даже не решил ничего. Не знаю что теперь делать

не большой такой косяк, бесит уже.



1. Просмотр
2. Редактирование

сам значение он выбирает.
В редактировании 1 селекте должен быть украина и все :]

Последний раз редактировалось Nelzz, 28.02.2015 в 07:37.
Ответить с цитированием
  #8 (permalink)  
Старый 28.02.2015, 07:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Страна Украина
Город Донецк

это как отображение результата выбора по двум спискам?
Ответить с цитированием
  #9 (permalink)  
Старый 28.02.2015, 08:06
Интересующийся
Отправить личное сообщение для Nelzz Посмотреть профиль Найти все сообщения от Nelzz
 
Регистрация: 20.10.2014
Сообщений: 14

Сообщение от laimas Посмотреть сообщение
Страна Украина
Город Донецк

это как отображение результата выбора по двум спискам?
Да, только в селекте
Ответить с цитированием
  #10 (permalink)  
Старый 28.02.2015, 08:11
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

только в селекте

Это как понять? Наверное тогда каждый отображает свое, а ваш ответ можно трактовать как в одном.

Первый список (страна) также добавляется на страницу динамически или же он есть в наличии при открытии страницы (что логично, если некие обстоятельства не позволяют этого)?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
scrollTop - почему то всегда показывает 0! Siend jQuery 4 30.12.2014 00:59
Не показывает количество символов, работа со строками, форма для регистраци kvadratnt Общие вопросы Javascript 4 11.12.2012 23:15
Не показывает на русском? gigor Элементы интерфейса 1 02.04.2012 22:57
Не показывает результаты поиска Blackstuff Общие вопросы Javascript 0 28.06.2011 10:31
Есть 2-a скрипта, 1-й показывает время, 2-й меню сайта. mahno Я не знаю javascript 11 30.05.2009 16:19