Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.09.2015, 14:48
Аватар для tvixa
Аспирант
Отправить личное сообщение для tvixa Посмотреть профиль Найти все сообщения от tvixa
 
Регистрация: 09.09.2013
Сообщений: 33

Передача нового значения value в select
Добрый день. У меня возникла небольшая проблемка с изменением значения в выпадающем списке. Суть такова: есть блок со списком элементов, у каждого элемента свои свойства.

При клике на какой-нибудь элемент списка слева в правой таблице появляются соответствующие значения. Текстовые поля input правильно отображают получаемые значения, а вот с выпадающим списком получается запара. Я получаю от сервлета его значение (назовем его merchantId), и должна найти и сравнить со значением получаемым из другого сервлета. Вот этот второй сервлет возвращает список всех участников : их id и name . Мне необходимо вставить в значение value переменную merchantId и установить соответствующее этому id name и сделать его selected. Второй день сижу... Помогите пожалуйста. Вот костяк
<div class="fraud_event_block_2">
            <table id="fraudListSettings" class="fraudListSettings">
                <tr>
                    <th>Настройка</th>
                    <th>Коммерсант</th>
                    <th>Значение</th>
                </tr>
                <tr>
                    <th>проверка</th>
                    <th>проверчкмммм</th>
                    <th>проверка значения</th>
                </tr>
            </table>
        </div>


А вот мои запросы
function getMerchantList(){
        var xml='<request type="mng_GetMerchantList">'+
            '<sessionId>' + adSessionId + '</sessionId>'+
            '<pageSize>' + 999999 + '</pageSize>' +
            '<pageNum>' + 1 + '</pageNum>' +
            '</request>';
        postxml('/j/LS/mng/merchant/mng_GetMerchantList', xml,
            function(xml){
                $(xml).find('Merchant').each(function (){
                    $('.fraudMerchantList').append('<option value="' + $(this).find('id').text() + '">'
                        + $(this).find('name').text() + '</option>');
                });

                /*$(".fraudMerchantList option[value='1']").attr("selected", "selected");*/
            })
    }
    var counter = 0;
    function selectFraudTypeSettings(xml){
        $(xml).find("fraudEventTypeDataList").each(function(){
            var items = $(this).attr('totalCount');
            alert(items);
            $("#fraudListSettings").html("");
            if (items > 0){
                $(this).find('fraudEventTypeData').each(function(){
                    varName = $(this).find('varName').text();
                    data = $(this).find('data').text();
                    FroMerchantId = $(this).find('merchantId').text();
                    eventTypeDataId = $(this).find('id').text();
                    if (eventTypeDataId != 0){
                        $("#fraudListSettings").append('<tr><th><input type="text" value="'+ varName +'"></th><th class="test"><select class="fraudMerchantList" id="'+counter+'"></select><span>'+FroMerchantId+'</span></th><th><input type="text" value="'+ data +'"/></th></tr>');
                    }
                    counter++;
                });
                getMerchantList();
                var myselect = $("#fraudListSettings select"+ counter);
                options = myselect.options;
                for(var i = 0; i< options.length; i++){
                    if(options[i].value == FroMerchantId){
                        $(("#"+counter).option[value=''+FroMerchantId+'']).attr("selected", "selected");
                    }
                }
            }
        })
    }


Если коротко, мне просто нужно установить выбранным в вывадающем поле значение с id совпадающим с полученным. Надеюсь подробно расписала. Заранее спасибо
Циферки под закрашенными полями это получаемые id - шники клиентов
Ответить с цитированием
  #2 (permalink)  
Старый 08.09.2015, 15:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от tvixa
var myselect = $("#fraudListSettings select"+ counter);
???
var myselect = $("#"+ counter)[0];


Сообщение от tvixa
if(options[i].value == FroMerchantId){ $(("#"+counter).option[value=''+FroMerchantId+'']).attr("selected", "selected"); }
if(options[i].value == FroMerchantId){
                        options[i].selected=true;
                    }
Ответить с цитированием
  #3 (permalink)  
Старый 08.09.2015, 15:21
Аватар для tvixa
Аспирант
Отправить личное сообщение для tvixa Посмотреть профиль Найти все сообщения от tvixa
 
Регистрация: 09.09.2013
Сообщений: 33

Он не ухватывает drop down myselect в принципе. и не присваивает переменной. пишет undefined
Ответить с цитированием
  #4 (permalink)  
Старый 08.09.2015, 15:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от tvixa
Он не ухватывает drop down myselect
не осилил
Ответить с цитированием
  #5 (permalink)  
Старый 08.09.2015, 15:38
Аватар для tvixa
Аспирант
Отправить личное сообщение для tvixa Посмотреть профиль Найти все сообщения от tvixa
 
Регистрация: 09.09.2013
Сообщений: 33


Почему - то не получается получить объект select через id
Ответить с цитированием
  #6 (permalink)  
Старый 08.09.2015, 15:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от tvixa
getMerchantList();
в этой функции вам нужно установку selected делать
строки после 35 не будут ждать когда сработает строка 34 , сработают раньше чем 34
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить значение jquey range в зависимости от значения select? drkrol jQuery 1 07.09.2015 01:24
Проверка нескольких select на одинаковые значения emulexx Общие вопросы Javascript 6 07.04.2015 15:19
Изменение цвета шрифта выбранного значения select AlexG88 Элементы интерфейса 15 16.03.2015 10:33
изменение значения input при смене значения select galart jQuery 4 30.01.2015 19:39
Как в oninput получить значения select? Jeick9 Events/DOM/Window 9 11.10.2014 20:18