2013-11-12 3 views
0

Я хочу назначить идентификатор сеанса (это будет скрыто) всякий раз, когда используется первый выбор выпадающего списка. Идентификатор сеанса - это номер 300, 301 и т. Д. После «дня».Как назначить идентификатор динамическому выпадающему меню?

Когда пользователь выбирает что-то из «предпочтительных» выпадающего он должен назначить «300» значение с «SESSIONID» выпадающее меню и одновременно изменить значение «день» выпадающий список (который работает уже кстати)

Как это сделать правильно?

Пожалуйста, смотрите код ниже:

<select id="preferred" class="preferred" name="preferred"> 
    <option value="">- Select -</option> 
    <option value="Mountain Dew">Mountain Dew</option> 
    <option value="Seven Up">Seven Up</option> 
</select> 
<select id="day" class="day" name="day"> 
    <option value=""></option> 
</select> 
<select id="sessionid" class="sessionid" name="sessionid"> 
    <option value=""></option> 
</select> 

$(function() { 
    var selectValues = { 
    "Mountain Dew": { 
    "Monday": "300" 
    }, 
    "Seven Up": { 
    "Tuesday": "301" 
    } 
}; 

var $preferred = $('select.preferred'); 
var $day = $('select.day'); 
var $sessionid = $('select.sessionid'); 

$preferred.change(function() { 
    $day.empty().append(function() { 
    var output = ''; 
    $.each(selectValues[$preferred.val()], function(key, value) { 
    output += '<option value="' + key + '">' + key + '</option>'; 
    }); 
    return output; 
    }); 
}).change(); 
}); 

пример: http://jsfiddle.net/creativemix/5ZWrE/2/

+0

Вы можете использовать 'Element.id = 'id'' для установки id в javascript. https://developer.mozilla.org/en-US/docs/Web/API/Element.id – sg3s

+0

Почему бы просто не использовать скрытое текстовое поле и не устанавливать значение 'id' или' value' этого поля? – Jacques

ответ

0

Попробуйте это, если вы хотите установить значение раскрывающегося списка идентификаторов сеанса. Включите это после установки выходной переменной в вашей скрипке.

Описание: link к скрипке.

Но, как уже говорили другие, почему бы не использовать скрытое текстовое поле для хранения значения?

Чтобы сохранить значение в скрытом поле,

<input type="hidden" id="hdnSessionId" /> 

И добавьте к этому сценарию.

$('#hdnSessionId').val(value); 
+0

Вау! Оно работает! Мне нравится ваше предложение по его сохранению в текстовом поле. Если я должен использовать текстовое поле, какие изменения необходимо внести в код? Благодаря! – creativemix

+0

Вы можете использовать ввод типа hidden и установить значение. Я обновил свой ответ. – Poornima

+0

Спасибо вам большое! На самом деле мне очень помогли! Больше силы для вас. : D – creativemix

0

Вы можете использовать Element.id = 'id' установить идентификатор в JavaScript.

https://developer.mozilla.org/en-US/docs/Web/API/Element.id

В своем коде, который, вероятно, будет что-то вроде этого в точке, где вы хотите присвоить идентификатор:

$sessionid[0].id = $day.val(); 

Но обратите внимание, идентификатор должен начинаться с буквы и цифры в целом плохая практика, даже если она работает.

Включение этого значения в скрытое поле, вероятно, предпочтительнее.

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