可编辑可选择的下拉框

需求说明:创建一个下拉框,选择option后,可以对选中的内容进行编辑,如下图


实现思路:用一个input视线编辑功能,border隐藏,在视觉上认为是selet实现编辑功能。select触发change事件时,将value(选中的option)填入到input中

代码

<!DOCTYPE html>
<html>
<head>
 <title>可编辑可选择的下拉框</title>
 <meta charset="utf-8">
 <style>
  .list-name-input{
   color: #333;
   font-family: tahoma, 'Microsoft YaHei', 'Segoe UI', Arial, 'Microsoft Yahei', Simsun, sans-serif;
   font-size: 15px;
   font-weight: bold;
   height: 50px;
   margin: 0px;
   padding: 0px;
   position: relative;
   width: 530px;
  }
  .list-name-for-select{
   border: 0;
   color: #555;
   height: 20px;
   lighting-color: rgb(255, 255, 255);
   line-height: 20px;
   margin:0 0 10px 0;

   outline-color: #555;
   outline-offset: 0px;
   outline-style: none;
   outline-width: 0px;

   padding: 4px 6px;
   position: absolute;
   top: 1px;
   left: 3px;
   vertical-align: middle;
   width: 486px;
  }
  .list-name-input-for-select:focus{
   border: 0;
   border-radius: 0;
  }
  .list-select{
   background-color: #FFF;
   border:1px #ccc solid;
   border-radius: 4px;
   color: #555;
   cursor: pointer;
   height: 30px;
   left: 0px;
   margin:0 0 10px 0;
   padding: 4px 6px;
   position: absolute;
   top: 0px;
   vertical-align: middle;
   white-space: pre;
   width: 530px;
  }
 </style>
</head>
<body>
 <div id="list-name-input" class="list-name-input">
     <select type="text" class="list-select" id="list-select">
         <option value="0">
             TEST-A
         </option>
         <option value="1">
             TEST-B
         </option>
         <option value="2">
             TEST-C
         </option>
         <option value="3">
             TEST-D
         </option>
     </select>
     <input type="text" class="name item-width list-name-for-select" id="list-name-for-select">
 </div>

 <script>
  var listName = document.getElementById('list-name-for-select');
  document.getElementById('list-select').onchange = function(e){
   if(this.value){
    listName.value = this.value + ' | ' + this.options[this.selectedIndex].text;
   }else{
    listName.value = ''
   }
  };
 </script>
</body>
</html>


  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DataGridView是Windows Forms中常用的表格控件,它提供了下拉框编辑功能,可以让用户通过下拉选择编辑单元格的内容。要实现DataGridView可编辑下拉框,首先需要为单元格添加一个下拉框控件作为编辑控件。可以通过DataGridView的EditingControlShowing事件来实现这个功能。当单元格进入编辑状态时,会触发EditingControlShowing事件,我们可以在这个事件中判断当前单元格的列是否是需要下拉框编辑的列,如果是,则可以将一个下拉框控件赋值给当前单元格的编辑控件。 接着,我们需要为下拉框控件添加数据源,以便用户可以从下拉框选择相应的内容。可以为下拉框控件的DataSource属性赋值一个数据源,比如DataTable、List等,然后再设置下拉框控件的DisplayMember和ValueMember属性,指定要显示的内容和对应的值。这样下拉框中就会显示数据源中的内容,并且用户可以通过下拉选择编辑单元格的内容。 最后,还需要处理用户编辑下拉框后的值,可以通过DataGridView的CellEndEdit事件来实现。当用户完成对单元格的编辑后,会触发CellEndEdit事件,我们可以在这个事件中获取用户编辑后的值,并更新到相应的数据源中。 通过以上步骤,就可以实现DataGridView可编辑下拉框功能,用户可以通过下拉框选择内容来编辑单元格的值,从而提高了数据的输入效率和准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值