页面上有俩个下拉框,初始化的时候动态加载option项目,遇到了这样的问题,代码如下
var $newItem = $("<option value=''>-请选择-</option>");
            $drpCountry.append($newItem);
            $drpProvince.append($newItem);此时页面加载后 drpProvince 下拉框 加载了这个新项,而drpCountry没有加载,
换了种写法:
$drpCountry.append($("<option value=''>-请选择-</option>"));
            $drpProvince.append($("<option value=''>-请选择-</option>"));
这样就可以了那么针对第一种情况,大家有没有好的写法,推荐下。

解决方案 »

  1.   

    var newItem = $("<option value=''>-请选择-</option>");
    drpCountry.append(newItem);
    drpProvince.append(newItem);
      

  2.   

    使用jquery标准写法吧!
    $('#select1,#select2').append(appoption);和$('select').append(appoption);任选一种<html>
    <body>
    <select id="select1"></select>
    <select id="select2"></select>
    <script language="javascript">
    var appoption = "<option value=''>-请选择-</option>";
    //$('#select1,#select2').append(appoption);
    $('select').append(appoption);
    </script>
    </body>
    </html>
      

  3.   

    var newItem = "<option value=''>-请选择-</option>"; // 直接字符串好了,用jquery包装一层反而浪费资源
      $drpCountry.append(newItem);
      $drpProvince.append(newItem);
      

  4.   

    看看API吧,jquery中的append方法传入的参数类型是String, Element!
      

  5.   

    1、append() 方法在被选元素的结尾(仍然在内部)插入指定内容。
    $(selector).append(content);
    2、appendTo() 方法在被选元素的结尾(仍然在内部)插入指定内容。
    $(content).appendTo(selector)
    楼主可以参考下:http://www.w3school.com.cn/jquery/manipulation_append.asp
      

  6.   

    $drpCountry.append($newItem.clone());
      $drpProvince.append($newItem.clone());明白了没