动态下拉菜单的占位符

时间:2014-03-14 19:38:59

标签: jquery ajax

我想知道如何在下拉菜单中添加占位符,例如“选择城市”。我怎么能这样做?

function loadlist(selobj,url,nameattr)
{
    $(selobj).empty();
    $.getJSON(url,{},function(data)
    {
        $.each(data, function(i,obj)
        {
            $(selobj).append(
                 $('<option></option>')
                        .val(obj[nameattr])
                        .html(obj[nameattr]));
        });
    });
}

2 个答案:

答案 0 :(得分:4)

您希望第一个option成为&#34;选择一个城市&#34;并给它一个空值。您以后想要进行一些验证,以确保在提交之前选择此项。

function loadlist(selobj,url,nameattr)
{
  // save the jQuery obj in a var for efficiency.
  $selobj = $(selobj);
  $selobj.empty();
  $.getJSON(url,{},function(data)
  {
    $selobj.append(
        $('<option>Select a City</option>')
                    .val('null')
    );

    $.each(data, function(i,obj)
    {
        $selobj.append(
             $('<option></option>')
                    .val(obj[nameattr])
                    .html(obj[nameattr]));
    });
  });
}

答案 1 :(得分:0)

只需在循环之前添加选项:

....
 $.getJSON(url,{},function(data)
{
    $(selobj).append('<option>Select City</option>') //here
    $.each(data, function(i,obj)
    {
        $(selobj).append(
             $('<option></option>')
                                .....