如何在asp.net c#中通过javascript获取选择组合框中选定文本的值

问题描述 投票:0回答:1

如何通过选择组合框获取所选文本的值? 这是绑定组合框的 aspx.cs 代码

service.BindHTMLDropdownList(cmb_labelno, "tbl_StockRunning", "StockTagNo", "StockId", "where IsActive = 1 and StockTypePrefix = 'T' and " +
    "BranchId = " + Session["BranchId"] + "");

组合框名称:cmb_labelno 表名称:tbl_StockRunning 文本:StockTagNo 值:库存ID

这是aspx代码

<select id="cmb_labelno" runat="server"></select>
<input type="button" id="btnGetStock" value="VIEW"/>


$("#btnGetStock").click(function (e) {               
    alert(document.getElementById('cmb_labelno').value);
});

现在,我使用的 alert(document.getElementById('cmb_labelno').value 的位置 alert(document.getElementById('cmb_labelno').val 仍然没有显示值。

如果我在 Jquery 中做同样的事情,仍然只显示选定的文本而不显示值 这是我的 Jquery 代码,

document.getElementById('<%= cmb_labelno.ClientID %>').value

代码有问题吗……???

javascript jquery asp.net drop-down-menu return-value
1个回答
0
投票

您应该执行以下操作来从

select
元素获取值。

我要附上一个片段。 首先,我在全局范围内声明了两个名为

selectedValue
selectedText
的变量,这样我就可以在每次单击 VIEW 时将它们的值记录到输入类型按钮的侦听器上。

要获取所选选项,您必须打开

label.options
,然后就像访问数组一样,插入属性 selectedIndex 作为“数组”(不是数组)的索引。

它更像是 DOM 元素的 Nodelist,其中包含选项及其相应的值/文本。

我说的是数组,所以我想在这里解决的问题更难以理解。

   // I have used pure vanilla javascript for getting the values for the select element
var label = document.getElementById("cmb_labelno");
let selectedValue = '';
let selectedText = '';


label.addEventListener("change", function(e){
 
  selectedValue = label.options[label.selectedIndex].value;
  selectedText = label.options[label.selectedIndex].text;
  console.log(selectedValue);
  console.log(selectedText);
});



$("#btnGetStock").click(function (e) {  
  console.log(selectedValue);
    console.log(selectedText);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
<select id="cmb_labelno">
  <option value="1">test1</option>
  <option value="2">test2</option>
  <option value="3">test3</option>
</select>

<input type="button" id="btnGetStock" value="VIEW"/>

希望可以帮助您解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.