Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.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/82.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 如何更改某个分区中输入元素的类别_Javascript_Jquery - Fatal编程技术网

Javascript 如何更改某个分区中输入元素的类别

Javascript 如何更改某个分区中输入元素的类别,javascript,jquery,Javascript,Jquery,我在div中有“next”类的输入字段,如下所示: <div id="Q1"> <input class="next" type="radio" id="listIt_YN_UA" name="listIt_YN" value="U">&nbsp;&nbsp; <label for="listIt_YN_UA"><span class="red">Come Back To This Question At A

我在div中有“next”类的输入字段,如下所示:

<div id="Q1">    
    <input class="next" type="radio" id="listIt_YN_UA" name="listIt_YN" value="U">&nbsp;&nbsp;
    <label for="listIt_YN_UA"><span class="red">Come Back To This Question At A Later Time</span></label><br /><br />
</div>
我试图用上述函数中的语句更改当前可见div中的“next”类。我已经尝试了一些方法,比如下面的方法,但是没有一种有效。有什么想法吗

$("." + tab_pool[curr_ind]).removeClass("next").addClass("newNext");
尝试:


您需要在
选项卡\u pool
ID之前使用
而不是
,然后使用
.find('input')
来访问输入元素。

让我特别显示ID为
Q1
的div的代码-

$(".next").click(function toggle(){
    if($("#" + "Q1" + ">input[type=radio]").attr('checked')==undefined)
    {
     $("input[type=radio]").attr('checked', true);
     $("input[type=radio]").removeClass("next").addClass("newNext");
    }
    else
    {
     $("input[type=radio]").removeAttr('checked');
     $("input[type=radio]").removeClass("newNext").addClass("next");
    }
})
因此,基本上实现中的jquery对象是

$("#" + tab_pool[curr_ind] + ">input[type=radio]")

选中此项

在HTML中带有
class=“Q1”
class=“Q2”
等的元素在哪里?@Barmar这不是类,它是div id那么为什么要在jQuery选择器中将
放在它前面呢?使用
#
作为ID,使用
作为类。以及
$(“.tab:visible”)
如何与您提供的html相关。我认为这个函数与您正在使用的html完全没有关系。@Barmar用#尝试id,尝试(.next)什么都不起作用。该函数本身的工作似乎不能改变输入它的类,不好!还尝试了$('..+tab_pool[curr_ind]).find('input').removeClass('next').addClass('newNext');我在上面要求您制作一个小提琴来显示您当前的代码。如果不看代码,就不可能知道你做错了什么。如果我给你一个页面链接,并解释一下发生了什么事情,那就更容易了。好的,在你工作的时候给我一个指向真实页面的链接。
$(".next").click(function toggle(){
    if($("#" + "Q1" + ">input[type=radio]").attr('checked')==undefined)
    {
     $("input[type=radio]").attr('checked', true);
     $("input[type=radio]").removeClass("next").addClass("newNext");
    }
    else
    {
     $("input[type=radio]").removeAttr('checked');
     $("input[type=radio]").removeClass("newNext").addClass("next");
    }
})
$("#" + tab_pool[curr_ind] + ">input[type=radio]")