Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.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 无法识别父项().prev()组合_Javascript_Php_Jquery_Parent Child - Fatal编程技术网

Javascript 无法识别父项().prev()组合

Javascript 无法识别父项().prev()组合,javascript,php,jquery,parent-child,Javascript,Php,Jquery,Parent Child,我有以下代码和脚本。关于内部输入,id=“sfctry”,我的jquery在获取外部输入id=“eca”时遇到问题 正如您在script标记中所看到的,我目前有$(this).parents('ul').prev().find('input.cccc'),但我也尝试了closest()、prev().prev().prev()和其他组合 谢谢你的帮助 <li id="sepe"> <input type="checkbox" id="eca" name=

我有以下代码和脚本。关于内部输入,id=“sfctry”,我的jquery在获取外部输入id=“eca”时遇到问题

正如您在script标记中所看到的,我目前有$(this).parents('ul').prev().find('input.cccc'),但我也尝试了closest()、prev().prev().prev()和其他组合

谢谢你的帮助

    <li id="sepe">
        <input type="checkbox" id="eca" name="eca" class="cccc">
        <label for="eca" ><?php echo $this->translate('Shall'); ?></label><br>
        <a id="ep" title="Select">Select</a>
        <ul>
            <?php foreach ($this->data['ectries'] as $e-cp_r) {
                if ($this->form_data['sfctry'] == $e-cp_r['cp_id']) {
                    unset($e-cp_r);
                            } else {
                    ?>
                    <li>
                        <input <?php echo in_array($e-cp_r['cp_id'], $ids) ? 'checked="checked"' : ''; ?> type="checkbox" id="sfctry" name="item_s"  value="<?php echo $e-cp_r['cp_id']; ?>"><label for="sfctry"><?php echo $e-cp_r['tribe']; ?></label>
                    </li>
                <?php
                }
                        } ?>
        </ul>
    </li>

    <script>
       if ($('input[name="item_s"]').not(':checked').length === 0){
        $(this).parents('ul').prev().find('input.cccc').prop({
            indeterminate: false,
            checked: true
        });
    </script>

  • 挑选
  • 如果($('input[name=“item_s”]')。不(':checked')。长度==0){ $(this).parents('ul').prev().find('input.cccc').prop({ 不确定:错误, 核对:正确 });
    是否定义了$(this)?
    prev()
    仅获取前一个元素。若要获取任何前一个同级元素,请使用
    prevAll
    -请参阅。更灵活的方法可能类似于
    $(this)。parents('ul')。parents('li')。find('input.cccc');
    。显然是$(this)没有在代码中引用您的复选框。另外,如果您有多个复选框,请尝试使用类而不是id。您需要绑定事件,例如单击等。我猜您希望循环每个li->id“sepe”如果没有选中任何复选框,您希望为输入cccc设置属性。这就是您正在尝试的吗?Tx everyone。是的,@Farhan,这就是我正在尝试做的,但我遇到了问题,因为正如git-e-up正确指出的那样,$(这)没有定义。