【问题标题】:Error create selectbox in jquery?在 jquery 中创建选择框时出错?
【发布时间】:2013-06-05 13:14:01
【问题描述】:
<div id="item"></div>
var div = $('<div/>', {
   style : 'border-top: 1px dotted #ccc; margin: 4px; padding: 10px;'
}).appendTo($('#item'));
var select = $('<select/>',{
   name : 'name[]',
   option: {
      value : 1,
      value : 2
   }
}).appendTo(div);

=> 错误无法为选择框创建值

如何修复它,结果如下:

<select name="name[]">
   <option value="1">1</option>
   <option value="2">2</option>
</select>

【问题讨论】:

标签: jquery


【解决方案1】:

请试试这个,

$(document).ready(function(){
var div = $('<div></div>').css({'border-top': '1px dotted #ccc', 'margin': '4px', 'padding': '10px'});

var select = $('<select/>')
.attr('name','name[]')
.append('<option value=1>My option</option>')
.append('<option value=2>My option</option>')
.appendTo(div);

div.appendTo($('#item'));


});

【讨论】:

    【解决方案2】:

    如果我是你,我会做这样的事情:

    var div = $('<div/>')
        .css({
            borderTop : '1px dotted #ccc',
            margin : '4px',
            padding : '10px'
        });
    
    div.appendTo( $('#item') );
    
    var opts = {
        value_1 : 'value #1',
        value_2 : 'value #2',
        value_3 : 'value #3'
    };
    var select = $('<select/>').attr( 'name', 'name[]' );
    
    $.each(opts, function( k, v ){
        // k is the key from opts, ex : value_1
        // v is the value attributet to k, ex : value #1
        $('<option />', {
            text : v,
            value : k
        }).appendTo( select );
    });
    
    select.appendTo( div );
    

    根据您的项目,您可以从 ajax 或您想要的任何内容填充“opts”对象

    Example here

    另外,对于那个 div,我会添加一个类,而不是添加 css 内联。及时修改会更容易

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-28
      • 1970-01-01
      • 2013-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-09
      相关资源
      最近更新 更多