我有一个表单,我在其中应用了一些 javascript(js 的最终目的是显示适当的后续问题),但是加载输入的部分
和 select
的值到变量中似乎不起作用。
这是确切的代码:
# 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();
});
在 fiddle 中,我希望跨度淡入并显示文本字段和下拉列表的值。 http://jsfiddle.net/vxvSU/
<小时/>顺便说一句,不包括以下自定义函数的代码,但我知道它们可以工作
counter_multiChoice()
、fadeOUT_sect()
、fadeIN_sect()
最佳答案
第一个问题是你的选择器
$('select[name="m_mlt_t"] input[name="m_mlt_n"]')
这会选择 select 元素内的任何子输入元素,这没有任何意义,可能应该是...
$('select[name="m_mlt_t"], input[name="m_mlt_n"]')
它会选择具有适当名称的所有匹配的选择、和输入元素。
关于javascript 变量未设置(可能是 jquery 问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8610472/