我是JavaScript和jQuery的新手。我想显示一个combobox-A,这是一个HTML <选择>与其选择的id和内容在onChange()的其他地方。

如何通过其选择id完整的组合框,以及如何通过onChange事件的其他参数?


当前回答

这为我onchange = setLocation($(This).val())

在这里。

    @Html.DropDownList("Demo", 
new SelectList(ViewBag.locs, "Value", "Text"), 
new { Class = "ddlStyle", onchange = "setLocation($(this).val())" });

其他回答

 //html code
   <select onchange="get(this)">
      <option value="a">1</option>
      <option value="b">2</option>
      <option value="c">3</option>
    </select>

//javscript code
   function get(select) {
      let value = select.value;  
      console.log(value);
    }
    

如果有人正在寻找一个React解决方案,而不需要下载附加依赖项,你可以这样写:

<select onChange={this.changed(this)}>
   <option value="Apple">Apple</option>
   <option value="Android">Android</option>                
</select>

changed(){
  return e => {
    console.log(e.target.value)
  }
}

确保在构造函数中绑定changed()函数,如下:

this.changed = this.changed.bind(this);

有趣的后盖(selectObject) 值= selectObject.值; 控制台日志(价值); 的 <选择id=“孔博”“> <option value=" >选择组合</option> <选项价值= >“Value1 Text1 < /选项> <选项价值= Value2 " > Text2 < /选项> <选项价值= >“Value3 Text3 < /选项> 选择< - >

上面的示例为您提供OnChange事件上组合框的选定值。

jQuery的解决方案

我如何得到一个选定的选项的文本值

选择元素通常有两个要访问的值。 首先是要发送给服务器的值,这很简单:

$( "#myselect" ).val();
// => 1

第二个是选择的文本值。 例如,使用以下选择框:

<select id="myselect">
  <option value="1">Mr</option>
  <option value="2">Mrs</option>
  <option value="3">Ms</option>
  <option value="4">Dr</option>
  <option value="5">Prof</option>
</select>

如果你想获得字符串“Mr”,如果选择了第一个选项(而不是“1”),你可以用下面的方式来做:

$( "#myselect option:selected" ).text();
// => "Mr"  

另请参阅

.瓦尔()金刚火证件

在某些情况下,另一种方便的方法是将所选<option />的值直接传递给函数,如下所示:

myFunction(selected) { console.log(选择); } <选择onChange = " myFunction (this.options [this.selectedIndex] value)" > <option value="1">Text 1</option> . <option value="2">Text 2</option> . < /选择>