如何使依赖下拉菜单显示在HTML/jQuery

问题描述:

所以,我试图做到这一点,虽然它在jsfiddle上工作,它不会在我试过的任何浏览器...任何想法? 即使它是唯一的页面,它也会拒绝任何原因。 http://jsfiddle.net/RWUdb/101/如何使依赖下拉菜单显示在HTML/jQuery

<div> 
<label>Device:</label> 
<select name="Device" id="Device" class="" onclick="craateUserJsObject.ShowPrivileges();"> 
<option value="Select">--Select a Device--</option> 
<option id="iOS" value="iOS">iOS Device</option> 
<option id="macdesktops" value="macdesktops">Mac Desktop</option> 
<option id="maclaptops" value="maclaptops">Mac Laptop</option> 
<option id="pcdesktops" value="pcdesktops">PC Desktop</option> 
<option id="pclaptops" value="pclaptops">PC Laptop</option> 
</select> 
</div> 
<div class="resources" style=" display: none;"><select> 
<option>-Select a Model-</option> 
<option value="Touch">iPod Touch</option> 
<option value="Nano">iPod Nano</option> 
<option value="Classic">iPod Classic</option> 
<option value="Shuffle">iPod Shuffle</option> 
</select> <font color="red">*</font></div> 
<div class="resources2" style=" display: none;"> 
<select> 
<option>-Select a Model-</option> 
<option value="iMac">iMac</option> 
<option value="MacPro">Mac Pro</option> 
<option value="Mini">Mac Mini</option> 
</select> <font color="red">*</font> 
</div> 
<div class="resources3" style=" display: none;"> 
<select> 
<option>-Select a Model-</option> 
<option value="White">White Macbook</option> 
<option value="Pro">Macbook Pro</option> 
<option value="Air">Macbook Air</option> 
</select> <font color="red">*</font> 
</div> 
<div class="resources4" style=" display: none;"> 
<input type="text" id="pcdesktops" placeholder="ie. Dell Optiplex 9010"/> <font color="red">*</font> 
</div> 
<div class="resources5" style=" display: none;"> 
<input type="text" id="pclaptops" placeholder="ie. Lenovo G580" /> <font color="red">*</font> 
</div> 

的Javascript:

var Privileges = jQuery('#Device'); 
var select = this.value; 
Privileges.change(function() { 
if ($(this).val() == 'iOS') { 
    $('.resources').show(); 
} 
else $('.resources').hide(); 

if ($(this).val() == 'macdesktops') { 
    $('.resources2').show(); 
} 
else $('.resources2').hide(); 

if ($(this).val() == 'maclaptops') { 
    $('.resources3').show(); 
} 
else $('.resources3').hide(); 

if ($(this).val() == 'pcdesktops') { 
    $('.resources4').show(); 
} 
else $('.resources4').hide(); 

if ($(this).val() == 'pclaptops') { 
    $('.resources5').show(); 
} 
else $('.resources5').hide(); 
}); 
+0

什么是你所得到的错误?你是否正确包含jquery?如果你正在做这里的事情,你会错过几件事情。 –

+1

如果它在jsfiddle上工作,那么你可能在加载jquery脚本时遇到问题,或者在正确的时间在DOM中绑定自己的javascript。你使用jQuery $(document).ready函数吗?我注意到你的onclick也说“craateUserJsObject.ShowPrivileges();” - 是否在“创建”上有错字? –

+0

尝试使用单词'jQuery'而不是美元符号''''。检查这里和所有的答案。如果仍有问题,请返回并发布控制台显示的内容(控制台=按F12进行调试)。 – Sergio

你括在

$(document).ready(function() { 
// your code 
}); 
+0

我没有,但是当我加入时,没有任何变化 – Chris

在你的脑袋补充一点:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
+0

我添加了它,它仍然没有工作 – Chris

+0

尝试从该行删除类型:

+0

进一步查看您的代码,我看到您正在使用onchange事件侦听器。最好把这些放在页面的最后,而不是在

。将它在和