保持所选多个值并使用它们来创建表jQuery

时间:2014-04-01 09:35:51

标签: javascript jquery html select

我想知道如何保留多个选择的不同值,然后从jQuery创建一个数组。

让我解释一下,

我的多重选择我有5个值:

<select name="animal" id="animal" multiple="multiple"> 
    
<option> value="30"> Cat </ option> 
<option> value="31"> Dog </ option> 
<option> value="32"> Bird </ option> 
<option> value="33"> Cow </ option> 
<option> value="34"> Fox </ option> 

</ select> 

我选择示例值:30,32,34

当我点击我的&#34;显示&#34;按钮,我希望它创建一个如下所示的表:

  <table> 
       <thead> 
          <tr> 
            <th> 
              Animal 
            </ th> 
            <th> 
              Cat 
            </ th> 
            <th> 
              Bird 
            </ th> 
            <th> 
              Fox 
            </ th> 
         </ tr> 
       </ thead> 
       <tbody> 
       </ tbody> 
    </ table>

如何用jQuery做这个?

我希望我已经解释了我的问题。

感谢您将来的答案。

1 个答案:

答案 0 :(得分:2)

首先使select的标记有效。 option标签过早关闭,导致属性不属于标签。

<select name="animal" id="animal" multiple="multiple"> 
<option value="30"> Cat </option> 
<option value="31"> Dog </option> 
<option value="32"> Bird </option> 
<option value="33"> Cow </option> 
<option value="34"> Fox </option> 
</select> 

同时将按钮和表添加到标记中:

<button>Show Table</button>
<table>
    <thead>
        <tr>
        </tr>
    </thead>
    <tbody>
    </tbody>
</table>

然后使用以下Javascript / jQuery:

$("button").click(function(){
    var html;
    $("#animal option:selected").each(function(){
        html += "<th>" + this.text + "</th>";
    });
    $("table thead tr").append(html);
});

JS小提琴: http://jsfiddle.net/233b3/

如果必须动态生成整个表,则这是另一个Fiddle