问题描述
我在模式对话框中有一个Materialize下拉菜单。当我打开模态时,我想在模态显示之前动态设置所选项目,并在下拉文本中显示该项目。这是代码。 (请注意,我也设置了数据图标,但已将其从代码中删除,以便于阅读)。
<div id="modalRiskCalculator" class="modal">
<div class="modal-content">
<div class="row">
<div class="input-field col s1">
<label>BVR reach (daily)</label>
</div>
<div class="risk-div">
<div id="jacTest" class="input-field col s4">
<select id="riskBVRvalue" class="risk-select">
<option value="" disabled>Choose your option</option>
<option value="5">10M+</option>
<option value="4">1M+</option>
<option value="3">100K+</option>
<option value="2">10K+</option>
<option value="1">1K+</option>
</select>
</div>
</div>
</div>
</div>
</div>
$('#riskBVRvalue').val(3);
$('#modalRiskCalculator').modal('open');
模式打开正常,当我单击下拉列表时,它显示选定的val(3)项,但是仅当我单击下拉列表时,它才会更新下拉文本。我需要的是打开模态时下拉文本进行更新。
解决方法
解决这个问题-与情态无关。效果发生在主页上。
当您从$ {document).ready动态设置它时,它起作用。但是当我尝试从另一个触发器(例如,单击按钮)进行设置时,这不是我想要的。
,找到了! 您只需在动态更改后重新初始化select元素,即 $('select')。formSelect();