【问题标题】:Select box and getting the option label选择框并获取选项标签
【发布时间】:2016-09-21 00:55:25
【问题描述】:

我有一个下拉框,结构如下

<select 
     name="propertytype"
     value={this.state.propertytype}
     onChange={this.handlePropertyTypeChange}>
     <option value="">Property Type</option>
     <option value="T">Terrace</option>
     <option value="F">Flat</option>
     <option value="S">Semi</option>
     <option value="D">Detached</option>
</select>

句柄函数看起来像这样 - 我可以使用 e.target.value 获取下拉列表的值 --- 但我需要获取标签 - 所以我需要“Flat”而不是“F”。

handlePropertyTypeChange: function(e) {
    this.setState({propertytype: e.target.value});
}

-- 我已经尝试使用 e.target.nodeName 获取它

【问题讨论】:

    标签: javascript reactjs


    【解决方案1】:

    JavaScript:

    var el = document.getElementByName('prototypetype');
    var text = el.options[el.selectedIndex].innerHTML;
    

    使用 JQuery:

    $('select option:selected').text();
    

    使用 React 事件:

    var index = event.nativeEvent.target.selectedIndex;
    event.nativeEvent.target[index].text
    

    查看来自@Dhiraj Bodicherla 的演示:Get selected option text using react js?

    【讨论】:

    • 好吧,它使用reactjs - 没有办法通过事件获取值吗?
    • 是的,@Dhiraj Bodicherla 有一些演示,我已经回答了。
    • var index = event.nativeEvent.target.selectedIndex; event.nativeEvent.target[index].text
    • 你做到了吗?我不是 react.js 专家,为此我引用 @Dhiraj
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-08
    • 1970-01-01
    • 2020-04-22
    • 2011-01-11
    • 1970-01-01
    相关资源
    最近更新 更多