Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.02.2013, 00:37
Профессор
Посмотреть профиль Найти все сообщения от imediasun1
 
Регистрация: 23.12.2012
Сообщений: 437

Передача значения value в селект AJAX
Данная функция передает значение value и текстовое значение селекту, в качестве значения передает номер элемента массива, как зделать чтобы в качестве значения передавалась та же инфа что и текст, если пишу this вместо i в "<option value="' + i +" выдает error
function loadCity(select)
{
            var citySelect = $('select[name="city"]');
            citySelect.attr('disabled', 'disabled'); // делаем список городов не активным
            
            // послыаем AJAX запрос, который вернёт список городов для выбранной области
            $.getJSON('services_main.php', {action:'getCity', region:select.value}, function(cityList){
                
                citySelect.html(''); // очищаем список городов
                
                // заполняем список городов новыми пришедшими данными
                $.each(cityList, function(i){
                    citySelect.append('<option value="' + i + '">' + this + '</option>');
                });
                
                citySelect.removeAttr('disabled'); // делаем список городов активным
                
            });
        }
Ответить с цитированием
  #2 (permalink)  
Старый 11.02.2013, 01:03
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Ссылка на действующий сайт со скриптом есть ?
Ответить с цитированием
  #3 (permalink)  
Старый 11.02.2013, 01:09
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Можно извернуться так:
var ReturnThisText = (function( b ){
    return function(obj) {
        b.appendChild(obj);
        var c = $(b).text().replace(/"/g,"'");
        b.innerHTML=''
        return c;
    }
})( document.createElement( 'b' ) );
                $.each(cityList, function(i){
                   
                    citySelect.append('<option value="' +ReturnThisText(this) + '">' + this + '</option>');
                });

Последний раз редактировалось Deff, 11.02.2013 в 02:20.
Ответить с цитированием
  #4 (permalink)  
Старый 11.02.2013, 01:12
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Есть еще вариант, что в надписях двойные кавычки - нун тогда заменить на сервере на &quot;
Ответить с цитированием
  #5 (permalink)  
Старый 11.02.2013, 01:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,147

imediasun1,
Вариант ...
$.each(cityList, function(i , text){
                 citySelect.append('<option value="' + text + '">' + text + '</option>');
             });
Ответить с цитированием
  #6 (permalink)  
Старый 11.02.2013, 01:46
Профессор
Посмотреть профиль Найти все сообщения от imediasun1
 
Регистрация: 23.12.2012
Сообщений: 437

Эти варианты не работают , друзья, ссылка вот http://exportgrain.org/tiptop.names/index.phpна сайте при выборе селекта прописан алерт со значением, но после него какая то ошибка

Последний раз редактировалось imediasun1, 11.02.2013 в 01:51.
Ответить с цитированием
  #7 (permalink)  
Старый 11.02.2013, 02:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,147

imediasun1,
<!DOCTYPE html>

<html>

<head>
  <title></title>
</head>

<body>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script language="JavaScript" type="text/javascript">
var citySelect =  $('<select/>')
$.each(["london","rim"], function(i , text){
    citySelect.append('<option value="' + text + '">' + text + '</option>');
             });
alert(citySelect.html())
</script>
</body>

</html>
Ответить с цитированием
  #8 (permalink)  
Старый 11.02.2013, 02:12
Профессор
Посмотреть профиль Найти все сообщения от imediasun1
 
Регистрация: 23.12.2012
Сообщений: 437

алерт дает список значений и текста к ним, все в порядке но при выборе второго селекта, если не использовать i, а использовать text возникает какаято ошибка в алерте error уже после вывода значений во втором селекте
Ответить с цитированием
  #9 (permalink)  
Старый 11.02.2013, 02:18
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

imediasun1,
Подправил замену кавычек, в посте 3 - попробуйте
Ответить с цитированием
  #10 (permalink)  
Старый 11.02.2013, 02:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,147

imediasun1,
селектор у вас работает -- но в такой смеси тегов на странице врятли что-то будет работать как надо
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача HTML кода на сервер через Ajax KomaLex AJAX и COMET 2 06.12.2012 15:28
Кастомный чекбокс и передача значения checked spo jQuery 7 25.03.2012 12:37
Передача значения из функции в функцию wine-time Общие вопросы Javascript 4 18.09.2011 17:39
Передача файлов на клиента средствами AJAX GRIG AJAX и COMET 10 16.07.2010 17:23
передача значения предыдущего элемента ani_jery jQuery 1 16.10.2009 17:24