gpt4 book ai didi

javascript - jQuery 方法根据样式类名称查找所有 radio 输入

转载 作者:行者123 更新时间:2023-11-30 08:53:14 25 4
gpt4 key购买 nike

我正在使用下面的 javascript 函数获取页面上的所有单选按钮并清除它们。问题是我不想清除所有这些。有没有办法只清除其中的一组?我认为我可以对它们进行逻辑分组的唯一方法(因为它们是由服务器端映射动态生成的)是为所有我想要取消选中的对象提供一个通用样式类名并以这种方式进行搜索。关于如何修改以下内容以使其仅找到具有特定样式类名称的某些单选按钮的任何想法? align-top 是我的 styleClass 名称。

<script type="text/javascript">
function clearOtherSelections(selRow){
var radios = jQuery('td > input[type=radio]');
radios.attr('checked', false);
selRow.checked = 'checked';
}
</script>

当我使用下面修改后的代码时,var radios = jQuery('.align-top'); 警告所有 radio 都未选中,这是不正确的。当我使用我的旧方法 var radios = jQuery('td > input[type=radio]'); 时,它显示一个 radio 已检查而其他 radio 未检查,这是正确的。为什么 jQuery('.align-top'); 不显示 radio 检查属性的准确状态?

修改后的代码:

function clearOtherSelections(selRow){
//var radios = jQuery('td > input[type=radio]');
var radios = jQuery('.align-top');
for( i = 0; i < radios.length; i++ ) {
if( radios[i].checked ) {
alert('checked')
radios.attr('checked', false);
}else{
alert('unchecked')
}
}

selRow.checked = 'checked';
}

最佳答案

我建议:

function clearOtherSelections(selRow){
var radios = jQuery('td > input.specificClassName:radio');
radios.prop('checked', false);
selRow.checked = 'checked';
}

您设置的是checked属性,而不是属性,因此请使用prop()方法,而不是 attr()

如果该类仅应用于您要设置样式的特定 input 元素,您可以简单地使用:

var radios = jQuery('.specificClassName');

或:

var radios = jQuery('input.specificClassName');

引用资料:

关于javascript - jQuery 方法根据样式类名称查找所有 radio 输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15959644/

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