2011-12-22 5 views
0

У меня есть часть формы, где я применил некоторый javascript (конечный смысл js - показать соответствующий вопрос), но часть который загружает значения input и select в переменные, похоже, не работает.javascript variable not setting (возможно jquery issue)

Вот точный код:

# HTML 
<ul id="m_mlt_t"> 
<li>How long have you known <span class="nom">__</span>?</li> 
    <li><input name="m_mlt_n" type="text" maxlength="3" /> <select name="m_mlt_t"><option></option><option>days</option><option>months</option><option>years</option></select></li> 
    <li><input name="m_mlt_n" type="radio" value="777" />I prefer not to answer</li> 
    <li><input name="m_mlt_n" type="radio" value="999" />Don't know</li> 
    <li><span class="m_mlt_t" style="display:none;"></span></li> 
</ul> 

# JAVASCRIPT 
$('select[name="m_mlt_t"], input[name="m_mlt_n"]').change(function() { 
    var time = $('input[name="m_mlt_n"]').val(); 
     $("span#m_mlt_t").text(time); 
     $("span#m_mlt_t").fadeIn(); 
    var period = $('select[name="m_mlt_t"]').val(); 
     $("span#m_mlt_t").append(" " + period); 
     $("span#m_mlt_t").fadeIn(); 
}); 

В скрипке, я ожидаю, что пролет, чтобы исчезать и отображать значение текстового поля и раскрывающийся список. http://jsfiddle.net/vxvSU/


кстати код для следующих пользовательских функций не входит, но я знаю, что они работают
counter_multiChoice(), fadeOUT_sect(), fadeIN_sect()

+0

Ваш код достаточно короткий, чтобы публиковать здесь - пожалуйста, сделайте это! – Alnitak

+2

У вас не может быть более одного элемента с тем же 'id'. –

+0

Я уверен ** вы ** знаете, что эти другие функции работают, но механизм javascript не делает этого и не позволит нам видеть, что происходит без них, включая 'undefined' qArray ... – jondavidjohn

ответ

3

Первая проблема заключается в ваш селектор

$('select[name="m_mlt_t"] input[name="m_mlt_n"]') 

Это выбирает любой элемент элементов ввода внутри элемента select, wh Ich не имеет никакого смысла, и, вероятно, будет ...

$('select[name="m_mlt_t"], input[name="m_mlt_n"]') 

, который выбирает все соответствующие выберите, и входные элементы с соответствующими именами.

+0

Спасибо! (текст наполнителя для удовлетворения минимальных требований) – jacob