如何检查用户何时更改选择下拉列表的值?

Posted

技术标签:

【中文标题】如何检查用户何时更改选择下拉列表的值?【英文标题】:How can I check when a user changes the value of a select drop down list? 【发布时间】:2011-12-29 14:34:13 【问题描述】:

我使用以下代码检查输入字段值的变化。在这种情况下,字段以 ID“Status_”和“Position_”开头

$(document).ready(function () 
    $("input[id^='Status_'], input[id^='Position_']").change(function (e) 
        var type = $(this).attr('id').split('_')[0];
        update($(this), type);
    ); 
);

现在我已经从作为输入字段的状态更改为作为可选下拉列表。

<select id="Status_0" name="AdminSummaries[0].Status"><option value="1">Released</option>
<option value="2">Review</option>
<option value="3">New</option>
</select>;

现在我可以做到这一点,以便在下拉列表中选择新值时调用 update(..) 函数,就像它是输入字段时一样?

【问题讨论】:

你试过了吗?它应该适合你。 如果不行,问题出在update()方法上,请贴出代码,我们看看。 【参考方案1】:

你的逻辑很好。但是您可能必须将input[id^='Status_'] 更改为select[id^='Status_']

【讨论】:

:input,它是任何类型输入(输入、文本区域、选择...)的选择器【参考方案2】:

input 更改为select

$(document).ready(function () 
    $("select[id^='Status_'], input[id^='Position_']").on('change',function (e) 
        var type = $(this).attr('id').split('_')[0];
        update($(this), type);
    ); 
);

【讨论】:

【参考方案3】:

您应该使用 jQuery 中可用的 change event 并将其绑定到下拉列表。所以您发布的代码应该仍然有效。

编辑: 正如 wescrow 所指出的,问题不在于使用 change 事件,而在于使用的选择器。

【讨论】:

以上是关于如何检查用户何时更改选择下拉列表的值?的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何通过通知下拉菜单检测设置何时更改?

如何检查 UIImagePickerController 何时更改相机类型?

检查用户从下拉栏选择一个选项

如何检查 iframe 中的选择下拉菜单是不是更改?

React Material-UI 获取检查的项目列表

如何将下拉选择框列表中用户选择的选项的值存储到 mysql 数据库中?