Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery手动更改无线组时触发两次更改事件_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery手动更改无线组时触发两次更改事件

Javascript 使用jQuery手动更改无线组时触发两次更改事件,javascript,jquery,Javascript,Jquery,在选择中选择A&L时,收音机组将隐藏,其值设置为n。 我试图触发变更事件,以便Hello div也消失,但它不能正常工作-在调试时,我注意到变更事件执行了两次-第一次正确,然后再次使用值j 我犯了什么错 以下是完整的代码: 在我看了其他一些问题之后,我觉得.val['n'].change;第24行应该有用- 但我似乎还是错过了什么 //查找元素 var banner=$banner消息; var按钮=$place; var langs=$langs; var trans=$trans; var

在选择中选择A&L时,收音机组将隐藏,其值设置为n。 我试图触发变更事件,以便Hello div也消失,但它不能正常工作-在调试时,我注意到变更事件执行了两次-第一次正确,然后再次使用值j

我犯了什么错

以下是完整的代码:

在我看了其他一些问题之后,我觉得.val['n'].change;第24行应该有用- 但我似乎还是错过了什么

//查找元素 var banner=$banner消息; var按钮=$place; var langs=$langs; var trans=$trans; var-radioGroup=$input[type=radio][name=translate]; var div=$dynamic; radioGroup.changefunction{ 如果this.value=='n'{ 皮; } 否则,如果this.value==='j'{ 节目组; } }; //句柄单击并添加类 button.changefunctionevent{ var al=button.val==al; 伊法尔{ 兰斯秀; 反式兽皮; 放射组val['n'].更改; }否则{ 反式展示; 羊皮; } }.改变; 身体{ 背景:20262E; 填充:20px; 字体系列:Helvetica; } 横幅信息{ 背景:fff; 边界半径:4px; 填充:20px; 字体大小:25px; 文本对齐:居中; 过渡:均为0.2s; 保证金:0自动; 宽度:300px; } 钮扣{ 背景:0084ff; 边界:无; 边界半径:5px; 填充:8px 14px; 字体大小:15px; 颜色:fff; } banner-message.alt{ 背景:0084ff; 颜色:fff; 边缘顶端:40px; 宽度:200px; } banner-message.alt按钮{ 背景:fff; 颜色:000; } 内部的 A&L 德国的 英语 不 青年成就 你好 val获取/设置元素的值。您的代码匹配集合变量中存在的所有选项,但与您要查找的特定元素不匹配。您可以使用属性选择器将目标指向父元素,从中可以找到特定元素的属性

试一试

更新:更可行的解决方案是使用过滤器


你的意思是,val同时返回n和j元素,然后首先在n上触发更改,然后在j上触发更改,这就是问题所在?谢谢,你的代码行成功了:@Cold_Class,实际上val是用来获取/设置值的,它不会通过匹配值来过滤元素,您的代码同时返回元素和未能触发事件:未能触发事件并不完全正确-当我在radioGroup change函数中放置警报时,我可以看到它被触发了两次。@Cold_类,我的意思是未能触发您正在查找的特定元素上的事件。噢,I和组。过滤器“[value=n]”。更改;似乎也行
radioGroup.parent().find('[value=n]').change();
radioGroup.filter('[value=n]').change();