创建的jQuery元素不采用jQuery风格



我是所有JavaScript和jQuery-stuff的新手。请原谅我的编码或肮脏风格的任何愚蠢的缺点。我为您经验丰富的方面的所有建设性反馈感到高兴。

我尝试动态添加一些jQuery元素,例如一些新的精选菜单。在我的示例中,用户应决定他要自定义多少辆车,并根据我想为每辆选择的每辆车创建一个新的选择菜单。

我可以做到这一点,如果用户选择" 2辆车",则jQuery将添加两个新的选择菜单。但是我的问题是这些菜单不再以jQuery风格。

我在这里做错了什么?是否也可以根据选择的汽车数量在"循环"中添加新菜单?

这是我的代码:

<script type="text/javascript">
    $('#select-choice-1').live( "change", function(event, ui) {
        var valuee = $(this).val();
        if (valuee == '2') ($('<label for="select-choice-2" class="select">Color of car #1</label>' +
                                          '<select name="select-choice-2" id="select-choice-2">'+
                                          '<option value="red">red</option>'+
                                          '<option value="blue">blue</option>'+
                                          '</select><br><br>' +
                              '<label for="select-choice-3" class="select">Color of car #2</label>' +
                                          '<select name="select-choice-3" id="select-choice-3">'+
                                          '<option value="green">green</option>'+
                                          '<option value="yellow">yellow</option>'+
                                          '</select>').appendTo('#site'));
        if (valuee == '3') ($('<h1>Test</h1>').appendTo('#site'));
    });
    </script>

这是HTML页面:

<div id="site" data-role="fieldcontain">    
    <label for="select-choice-1" class="select">Number of cars</label>
    <select name="select-choice-1" id="select-choice-1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
    </select>

    </div><!-- "site" -->
        $('#site').delegate("#select-choice-1", "change", function(event, ui) {
           var valuee = $(this).val();
           var constructhtml = '';
             if (valuee == '2') {
               constructhtml +='<label for="select-choice-2" class="select">Color of car #1</label>' +   '<select name="select-choice-2" id="select-choice-2">'+ '<option value="red">red</option>'+ '<option value="blue">blue</option>'+ '</select><br><br>' + '<label for="select-choice-3" class="select">Color of car #2</label>' + '<select name="select-choice-3" id="select-choice-3">'+ '<option value="green">green</option>'+ '<option value="yellow">yellow</option>'+ '</select>';
             }else if (valuee == '3') {
               constructhtml +='<h1>Test</h1>';
             }
    $('#site').append(constructhtml);
     });

op需要动态添加的选择菜单

将这个div放在您页面的底部

<div id="selectcontainer"></div>
$(document).ready(function(){
var str = '';
str+='<select>';
   for(i=1;i<=10;i++){
    str+='<option value='"+i+"'>'"+i+"'</option>';
  }   
str+='</select>';
 $('#selectcontainer').html(str);
});

相关内容

  • 没有找到相关文章

最新更新