2013-05-02 86 views
0

我们卡在一个有外壳选项的模块中。该外壳是一个下拉框,如果没有。的机箱被选中时,必须生成1个文本字段,如果选择了2个机箱,则必须动态生成2个文本字段,最大需求为4个。请帮助我们!下拉框的动态文本字段

+0

给一些代码来测试,告诉我们你已经尝试了什么? – 2013-05-02 06:57:36

+0

我们可以怎样帮助你?您没有向我们展示任何可用的工具:向我们展示您的代码,帮助我们*帮助您**。 – 2013-05-02 07:00:41

+0

<选择name = “外壳” ID = “外壳”> <选项值= “”>机箱 <选项值= “1”> 1 <选项值= “2”> 2 <选项值=“3”> 3 2013-05-02 07:04:55

回答

0

HTML

<select name="enclosure" id="enclosure" > 
    <option value="">Enclosure</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
</select> 
<div id="textBox-container"></div> 

SCRIPT

<script> 
    $(document).on('change','#enclosure',function(){ 
     var no=$(this).val(); 
     if(no) 
     { 
      $('#textBox-container').html(''); 
      for(i=0;i<no;i++) 
      { 
       $('#textBox-container').append('<input type="text" id="txtBox_'+(i+1)+'" value="'+(i+1)+'"/>'); 
      } 
     } 
    }); 
</script> 
0

您可以通过在最多四个文本框中创建,并根据下拉菜单中的选定选项对用户使用show/hide来完成此操作。例如:

if(val == 1){ 
     $("input[id$='textbox2']").hide(); 
     $("input[id$='textbox3']").hide(); 
     $("input[id$='textbox4']").hide(); 
    } else if(val == 2){ 
     $("input[id$='textbox3']").hide(); 
     $("input[id$='textbox4']").hide(); 
    } else if(val == 3){ 
     $("input[id$='textbox4']").hide(); 
    } 

希望这可能会帮助你。

+0

如果您拥有更多数量的文本框,则需要更改方法。如果您的动态元素显示数量较少,这将起作用。 – Prashant 2013-05-02 07:10:07