javascript - 为什么 jQuery 更改事件不适用于选择选项?

标签 javascript html events jquery

当第一个选择元素 (id=ANSWER.TTQ.MENSYS.9.) 中的值更改时,以下代码应启用第二个选择元素 (id=ANSWER.TTQ.MENSYS.8.),但它不会行不通,我已经用尽了所有我能想到的选项,包括那些已经在本网站上建议的选项。 (注意:元素 ID 必须是这些值,因此我没有使用 # 来选择它们,因为那不起作用)。

$(document).ready(function() {

 $("input[id='ANSWER.TTQ.MENSYS.9.']").bind('change',function() {
   alert ('this script runs');  
   $("input[id='ANSWER.TTQ.MENSYS.8.']").removeAttr('disabled');

 });
});

如果我将启用的选择 (id=ANSWER.TTQ.MENSYS.9.) 替换为按钮,并将更改事件替换为单击事件;有用。那么为什么不在 select 元素上使用 change 事件呢?

感谢您的帮助。

最佳答案

首先,您可以使用# 字符按id 选择。其次,您需要在 id 属性中对 . 进行转义,否则选择器引擎将查找 ID 为 ANSWER 且也具有 的元素>TTQMENSYS9 作为类。试试这个:

$("#ANSWER\\.TTQ\\.MENSYS\\.9\\.").bind('change', function () {
    alert('this script runs');
    $("#ANSWER\\.TTQ\\.MENSYS\\.8\\.").removeAttr('disabled');
});

Example fiddle

关于javascript - 为什么 jQuery 更改事件不适用于选择选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15475305/

相关文章:

php - php 和 html 文件扩展名有什么区别?

c# - 在 .dotnet (c#) 中,如果没有任何订阅,是否仍会引发事件?

javascript - 连接来自不同来源的 javascript 文件并将它们作为一个文件加载总是安全的吗?

html - 为什么 @media 查询中的 float 不能按预期工作?

javascript - 在 Angular :how to get "selected" option by ng-selected

javascript - 如何在两行 slider (滚动条)中制作 3 个缩略图

javascript - 将参数传递给函数

javascript - 动态创建的元素上的事件绑定(bind)?

javascript - JavaScript 中的 Return 语句未返回正确的值

Javascript 奇怪变量 var x = (x, y == "z");