2012-03-23 112 views
0

什么我想在这里做当任的最后3复选框在这多重选择下拉列表中选择是,我想要显示的任何最后3复选框的选择一个新的文本字段另一个文本字段这将是地址字段。 我目前所做的是选择需要的信息复选框下拉列表显示如下:打开在下拉多复选框

任何帮助将不胜感激。谢谢!

<p id="formSpacing"> 
    <input id="inforequired" type="checkbox" value="1" 
     onclick="unhide('hidden-input', this)"> 
    <label for="inforequired" class="iconic link"> Information requested</label> 
    <div id="hidden-input" style="display:none"> 

    <select title="Information Requested" multiple="multiple" 
      name="infoRequested" size="5"> 
     <option value="option1">options1</option> 
     <option value="option2">options2</option> 
     <option value="option3">options3</option> 
     <option value="option4">options4</option> 
     <option value="option5">options5</option> 
     <option value="option6">options6</option> 
     <option value="option7">options7</option> 
     <option value="option8">options8</option> 
     <option value="option9">options9</option> 
     <option value="option10">options10</option> 
    </select> 

    </div> 
</p> 

回答

1

基本上,使用jquery的最简单的方法来做到这一点是,如果该值高于7运行一个函数,如果一个选项被单击,然后检查(分离的最后3)

这里是的jsfiddle:http://jsfiddle.net/KKMuu/1/

,这里是使用的代码。

我添加了一个文本输入字段为ADRESS只是举例:

<p id="formSpacing"> 
    <input id="inforequired" type="checkbox" value="1" onclick="unhide('hidden-input', this)"> 
    <label for="inforequired" class="iconic link"> Information requested</label> 
    <div id="hidden-input" style="display:none"> 

    <select title="Information Requested" multiple="multiple" 
      name="infoRequested" size="5"> 
     <option value="option1">options1</option> 
     <option value="option2">options2</option> 
     <option value="option3">options3</option> 
     <option value="option4">options4</option> 
     <option value="option5">options5</option> 
     <option value="option6">options6</option> 
     <option value="option7">options7</option> 
     <option value="option8">options8</option> 
     <option value="option9">options9</option> 
     <option value="option10">options10</option> 
    </select> 
    </br> 

     <input id="adressinput" type="text" value="Adress Input" style="display: none;"/> 

    </div> 
</p>​ 

的JavaScript的,(使用jQuery)

$(document).ready(function(){ 

$("#inforequired").change(function() { $('#hidden-input').toggle(); })         


$('option').click(function() { 
var num = $(this).attr("value").replace('option','') 
    if (num > 7) {$('#adressinput').show(); } 
    else 
    { $('#adressinput').hide(); } 

}); 

,如果你没有它已经提到,你将需要引用jquery在你的脑海里,像这样:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 
+0

上面的代码完美地工作在jsfiddle上,但是当我的web pa ge地址栏不显示:(任何先决条件? – maddy2012 2012-04-28 13:28:26

+0

这里没有先决条件,切记在代码之前源码jquery,因为这个方法需要jquery运行。 (见最后一行)。除此之外,没有看到问题的现场,我不能说什么是打破它。 – 2012-04-29 10:44:46