获取下拉框的文本值

本文介绍两种获取HTML下拉框文本值的方法:一种适用于静态下拉框,通过事件监听和DOM操作实现;另一种适用于动态下拉框,利用AJAX从数据库获取数据并绑定到下拉框。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取下拉框的文本值

这次分享的是获取下拉框的文本值,这里写了两种获取下拉框文本值的方法,一种是写实的,一种是用数据库数据绑定上去的,用数据库数据绑定的两个都可以用,不过为了不重复就使用另一种方法。
首先准备一个写实的下拉框和一个数据库数据绑定的下拉框,还有两个文本框,用来显示两个下拉框文本值的。HTML代码如下:

 <div> 
    <p>写实</p>
      <select id="Select1">
          <option value="1">第一个</option>
          <option value="2">第二个</option>
          <option value="3">第三个</option>
      </select>
      <input id="Input1"/>

      <p>数据库</p>
      <select id="Select2"></select>
      <input id="Input2"/>
 </div>

第一种方法:首先给写实下拉框一个改变事件,在改变事件里面获取它的value值,然后用eq第几行获取一下它的text就可以获取到下拉框文本值,在这里要注意eq是从0开始,我的value值是从1开始,所以我要减1,代码如下:

 //写实下拉框
 $("#Select1").change(function () {
   	 var ID = $("#Select1").val();
     var Text = $("#Select1 option:eq(" + (parseInt(ID) - 1) + ")").text();
     $("#Input1").val(Text);
 });

效果1:
在这里插入图片描述
第二种方法:首先在页面加载时,查询数据库里面的数据把它绑定到下拉框上,把它的id作为value值,把它的name作为文本值,代码如下:

  //页面加载事件
  $(function () {
       $.post("SelectDropDown", function (S) {
           for (var i = 0; i < S.length; i++) {
               $("#Select2").append('<option value="' + S[i].id + '">' + S[i].name + '</option>');
           }
       });
   });

控制器代码:

public ActionResult SelectDropDown()
{
     var list = myModels.D_DropDown.
       Select(m => new { id = m.DropDownID, name = m.DropDownName }).ToList();
     return Json(list, JsonRequestBehavior.AllowGet);
}

然后给它一个改变事件,在改变事件里面获取它的value值,因为它的value值是id,所以获取这个id去数据库里面查相对应的值,获取到值后返回给页面的文本框上面,代码如下:

 //数据库
 $("#Select2").change(function () {
     var ID = $("#Select2").val();
     $.post("SelectDropDownID", { ID: ID }, function (S) {
         $("#Input2").val(S.DropDownName);
     });
 });

控制器代码:

 public ActionResult SelectDropDownID(int ID)
 {
        var list = myModels.D_DropDown.
          Where(m => m.DropDownID == ID).Single();
        return Json(list, JsonRequestBehavior.AllowGet);
 }

效果2:
在这里插入图片描述

获取下拉框并显示在文本框中,可以使用以下方法。首先,给下拉框添加一个改变事件,在事件中获取下拉框的value,然后使用eq方法获取对应行的文本。需要注意的是,eq是从0开始计数,而value是从1开始计数,所以需要将value减1。代码如下: ```javascript $("#Select1").change(function () { var ID = $("#Select1").val(); var Text = $("#Select1 option:eq(" + (parseInt(ID) - 1) + ")").text(); $("#Input1").val(Text); }); ``` 这段代码适用于写实的下拉框。如果是使用数据库数据绑定的下拉框,可以使用另一种方法。首先准备一个数据库数据绑定的下拉框和一个文本框,用来显示下拉框文本。然后给下拉框添加一个改变事件,在事件中获取下拉框的value,并将该发送到服务器端。服务器端根据该查询对应的文本,并将其返回给页面,最后将返回的文本显示在文本框中。代码如下: ```javascript $("#Select2").change(function () { var ID = $("#Select2").val(); $.post("SelectDropDownID", { ID: ID }, function (S) { $("#Input2").val(S.DropDownName); }); }); ``` 这样,文本框就可以获取下拉框并显示出来了。 #### 引用[.reference_title] - *1* *2* *3* [获取下拉框文本](https://blog.youkuaiyun.com/weixin_44569835/article/details/89082325)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值