反应,如何更改下拉菜单选项? jQuery的? [英] React, how to change dropdown menu option? JQuery?

查看:57
本文介绍了反应,如何更改下拉菜单选项? jQuery的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是HTML代码;

    <div class="gl-native-dropdown" autoid="shippingAddress-stateCode" optionsautoid="shippingAddress-stateCode-options" data-auto-id="shippingAddress-stateCode">
        <div class="gl-native-dropdown__select">
<span class="gl-native-dropdown__select-label">
<span class="gl-native-dropdown__select-label-text">State</span>
<span class="gl-native-dropdown__select-label-hint gl-form-asterisk"></span></span>
            <svg class="gl-icon gl-native-dropdown__select-icon">
                <use xlink:href="#dropdown"></use>
            </svg>
        </div>
        <select class="gl-native-dropdown__select-element">
            <option></option>
            <option>AA Military</option>
            <option>AE Military</option>
            <option>AP Military</option>
            <option>Alabama</option>
            <option>Alaska</option>
            <option>Nebraska</option>
            <option>Nevada</option>
            <option>New Hampshire</option>
            <option>New Jersey</option>
            <option>New Mexico</option>
            <option>New York</option>
        </select>
    </div>

这是我尝试过的;

let selectedValue = $('select[class="gl-native-dropdown__select-element"] > option:contains("New York")').val();

    let select = document.querySelectorAll('.gl-native-dropdown__select-element')[0];
    select.value = selectedValue;
    var nativeInputValueSetter = Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype, "value").set;
    nativeInputValueSetter.call(select, selectedValue);
    var ev2 = new Event('change', { bubbles: true});
    select.dispatchEvent(ev2);

但是我的代码不起作用,下拉菜单文本未更改为纽约"

But my code does not work, the dropdown menu text is not changed to "New York"

任何帮助,一切都将受到赞赏.

Anything helps, all is appreciated.

我不知道如何修正我的代码(不是HTML代码),而且我知道我已经接近了.

I do not know how to fix my code (not HTML code), and I know I am close.

谢谢.

推荐答案

let selectedValue = 'New York';

    let select = document.querySelectorAll('.gl-native-dropdown__select-element')[0];
    select.value = selectedValue;
    var nativeInputValueSetter = Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype, "value").set;
    nativeInputValueSetter.call(select, selectedValue);
    var ev2 = new Event('change', { bubbles: true});
    select.dispatchEvent(ev2);

这篇关于反应,如何更改下拉菜单选项? jQuery的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆