首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将组合框中的第一个值设置为空

将组合框中的第一个值设置为空
EN

Stack Overflow用户
提问于 2016-09-05 08:07:10
回答 3查看 550关注 0票数 2

如何将第一个值设置为null?我用了这个密码但不起作用?如何在组合框上设置占位符?提前谢谢你。

代码语言:javascript
运行
复制
<select class="ddlASN"></select>
代码语言:javascript
运行
复制
var result = 'a,b,c,d';

$('.ddlASN').html($.map(result.split(','), function(item) {
    return $('<option></option>').val('').html('')[0].outerHTML
    return $('<option></option>').val(item).html(item)[0].outerHTML
}).join(''));
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-09-05 12:47:31

你可以试试这个。

代码语言:javascript
运行
复制
    var result = 'a,b,c,d';

// placeholder option
var dd_content = '<option>-- Select an option --</option>';

// add rest of the options
jQuery.map(result.split(','), function(item) {
  dd_content += '<option value="'+item+'">'+item+'</option>';
});

jQuery('.ddlASN').html(dd_content);

它将防止在潜移默化后得到重复的值。

如果它不起作用,那么请在提交表单后告诉实际发生了什么。新的值是否分配给了组合框.

票数 2
EN

Stack Overflow用户

发布于 2016-09-05 08:20:15

试试这个:

代码语言:javascript
运行
复制
$(document).ready(function(){

    var result = 'a,b,c,d';
    var arr = result.split(',');

    $sel = $(".ddlASN");

    $sel.append("<option></option>");
    //$sel.append("<option>PlaceHolder</option>");

    for (var i =0 ; i < arr.length; i++) {

        $sel.append("<option>" + arr[i] + "</option>")

    }

})

最终代码:

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    
   Select : <select class="ddlASN"></select>
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
   <script>
$(document).ready(function(){
    
    var result = 'a,b,c,d';
    var arr = result.split(',');
    
    $sel = $(".ddlASN");
    
    $sel.append("<option></option>");
    
    for (var i =0 ; i < arr.length; i++) {
        
        $sel.append("<option>" + arr[i] + "</option>")
        
    }
    
})
    </script>
    </body>
</html>

票数 1
EN

Stack Overflow用户

发布于 2016-09-05 08:18:03

如何将第一个值设置为null?我用了这个密码但不起作用?如何在组合框上设置占位符?

您可以采取的一种方法是使用html(),而不是使用在每次调用中覆盖HTML的附录(),而是使用附录()添加所需的所有选项,其中可以使用瓦尔()向选项添加值,而使用案文()添加显示的文本:

代码语言:javascript
运行
复制
var result = 'a,b,c,d';

// placeholder option
var placeholderOption = $('<option></option>').val('null').text('placeholder');
$('.ddlASN').html(placeholderOption);

// add rest of the options
$('.ddlASN').append($.map(result.split(','), function(item) {
  return $('<option></option>').val(item).text(item);
}));
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="ddlASN"></select>

备注:您应该注意的一件重要事情是,在JavaScript中拥有多个return语句是行不通的,因为在第一个语句之后的任何return都是永远无法到达的。

map方法将接受一个数组,并根据回调返回的内容转换每个项。这意味着您可以返回一个新的选项元素,其值和文本设置为所需的值和文本,不需要返回任何其他内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39326255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档