Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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
使用jquery获取此之前的特定元素_Jquery_Html - Fatal编程技术网

使用jquery获取此之前的特定元素

使用jquery获取此之前的特定元素,jquery,html,Jquery,Html,这听起来很简单,所以我不确定我被困在哪里了。 我有一个我手动验证的表单。在我检查单选按钮是否符合要求后,我需要获得该元素上方的标签。 这是HTML。我无法更改标记,因为此代码是一个继承,并且是更大流程的一部分 这是我的HTML: <label>Do you market on? : </label> <li> <label>Plenty of Fish:</label> <span href="#" style="

这听起来很简单,所以我不确定我被困在哪里了。 我有一个我手动验证的表单。在我检查单选按钮是否符合要求后,我需要获得该元素上方的标签。 这是HTML。我无法更改标记,因为此代码是一个继承,并且是更大流程的一部分

这是我的HTML:

<label>Do you market on? : </label>
<li>
    <label>Plenty of Fish:</label>
    <span href="#" style="float:  left; margin-right: 10px;">
        <input type="radio" class="required" name="data[SignupAnswer][100][answer]" value="yes" />Yes
    </span>
    <span href="#" style="float: left; margin-right: 10px;"> 
        <input type="radio" class="required" name="data[SignupAnswer][100][answer]" value="no" />No
    </span>
    <input type="hidden" name="data[SignupAnswer][100][signup_question_id]" value="100">
    <input type="hidden" name="data[SignupAnswer][100][class]" value="bool">
    <input type="hidden" name="data[SignupAnswer][100][required]" value="0">
    <input type="hidden" name="data[SignupAnswer][100][question]" value="Plenty of Fish">
</li>
您在市场上销售吗?:
  • 大量的鱼: 对 不
  • 我找到了第一台收音机,然后我需要找到上面的标签“很多鱼”

    我尝试了使用.prev()和.closest(),都使用了('label'),但都没有返回实际的元素,而是返回此对象:

    [prevObject: jQuery.fn.jQuery.init[1], context: <input>, selector: ".next(li)"]
    
    [prevObject:jQuery.fn.jQuery.init[1],上下文:,选择器:“.next(li)”]
    
    也许有人能向我解释为什么我得到这个而不是一个元素?给我一个如何获得所需元素的想法?
    谢谢

    最近的
    选择第一个最近的父元素(由选择器指定),您可以选择父元素
    li
    元素,然后找到
    标签

    $(this).closest('li').find('label')
    

    为家庭时间干杯
    .parents()
    .children()


    另一种方法
    $('input[type=“radio”]:first').parent().sibbines('label')

    您可以附加一个JSFIDLE吗?请添加您尝试使用的jQuery代码!!谢谢大家,在我将JSFIDLE:)设置为简单且有效之前,有人回答了我的问题——似乎我需要更好地使用控制台,因为我尝试了aboe:)方法。谢谢
    $('input[value=yes]').parents('li').children('label')