gpt4 book ai didi

javascript - $ ("#id").val() 返回 dojo.filteringselect 对象的选项文本

转载 作者:行者123 更新时间:2023-12-02 18:44:15 25 4
gpt4 key购买 nike

我们有一个 dojo 过滤选择对象,但必须通过 jquery 进行验证。现在的问题是

var value= j("#filteringSelectId").val();

value 仅返回所选选项的文本而不是所选值...似乎 dojo 对原始 Dom 对象进行了一些更改,因为 dojo select 对象被标识为 input#filteringSelectId.dijitReset

那么如何通过 jQuery 获取 dojo reportingSelect 值而不是选项文本呢?可行吗?

最佳答案

如果您查看过滤选择创建的实际 HTML,它将看起来像这样(取自 dojo's reference docs)

<div class="dijit dijitReset dijitInline dijitLeft dijitTextBox dijitComboBox dijitValidationTextBox" id="widget_stateSelect" role="combobox" aria-haspopup="true" data-dojo-attach-point="_popupStateNode" widgetid="stateSelect">
<div class="dijitReset dijitRight dijitButtonNode dijitArrowButton dijitDownArrowButton dijitArrowButtonContainer" data-dojo-attach-point="_buttonNode" role="presentation" style="">
<input class="dijitReset dijitInputField dijitArrowButtonInner" value="&#9660; " type="text" tabindex="-1" readonly="readonly" role="button presentation" aria-hidden="true" />
</div>
<div class="dijitReset dijitValidationContainer">
<input class="dijitReset dijitInputField dijitValidationIcon dijitValidationInner" value="&Chi; " type="text" tabindex="-1" readonly="readonly" role="presentation" />
</div>
<div class="dijitReset dijitInputField dijitInputContainer">
<input class="dijitReset dijitInputInner" type="text" autocomplete="off" data-dojo-attach-point="textbox,focusNode" role="textbox" aria-required="true" tabindex="0" id="stateSelect" value="California" />
<input type="hidden" name="state" value="CA" />
</div>
</div>

根据这些信息,您可能可以构建一个选择器,例如:

$('#filteringSelectId .dijitReset input[type="hidden"]').val()

如果你只需要获取javascript中的值(我不能说我熟悉jquery验证),你可以这样做

dijit.byId('widgetId').get('value');

关于javascript - $ ("#id").val() 返回 dojo.filteringselect 对象的选项文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16566973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com