在Javascript中设置下拉值

在Javascript中设置下拉值,javascript,node.js,dom-events,greasemonkey,Javascript,Node.js,Dom Events,Greasemonkey,我有以下HTML的下拉列表 <select name="custom_123" id="custom_123_123" class="custom form-control form-control-full form-select searchable abcd-done" style="display: none;"> <option value="" selected=&

我有以下HTML的下拉列表

<select name="custom_123" id="custom_123_123" class="custom form-control form-control-full form-select searchable  abcd-done" style="display: none;">
<option value="" selected="selected">None</option>
<option value="1">Alaska</option>
<option value="2">Newyork</option>
</select>
<div id="custom_123_123_abcd" class="abcd-container abcd-container-single abcd-container- 
active" style="width: 100%"><a href="javascript:void(0)" class="abcd-single" 
tabindex="-1"><span>Alaska</span></a>
</div>

但这一点并不适用。有人能帮忙吗?

以下是一个基于您的代码的示例:

const select=document.querySelector('id^=“custom_123”]”);
select.value='Alaska';
评论更新
如果select上有侦听器,下面是一个如何触发更改事件的示例

const select=document.querySelector('id^=“custom_123”]”);
select.value='Alaska';
选择.dispatchEvent(新的CustomEvent('change'));

这是否回答了您的问题?没有。我以前检查过,它看起来很相似,但由于某些原因,解决方案对我不起作用。你在链接上的公认答案中尝试过该解决方案吗?这是设置选择值的正确方法。因此,如果它不起作用,那么代码中的其他地方就有问题。你出错了吗?我也试过了,但没用。文本会反映在页面上,但当浏览器调用ajax时,它不会选择此选项value@RekhaR答案是基于你的问题。必须检查ajax调用,以查看它从何处获取数据。我将添加一个替代方案,但这是一个总体想法,可能需要调整。
var dropdown_id = document.querySelector('[id^="custom_123"]').id;
var dropdown_abcd = dropdown_id + 'abcd';
document.getElementById(dropdown_abcd).getElementsByClassName("abcd-single")[0].innerHTML = "Alaska";