Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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,当有人点击相应的复选框时,我想填充“需求”输入框中“eventTitle”的值。i、 e如果在Vels仪表组的复选框上选中某个复选框,则我希望该复选框自动填充到名为“Requirement”的文本框中。如果单击多个复选框,我希望它以逗号分隔。下面是我试图获取的代码,但它不起作用并且没有定义 <div class="wid100"> <div class="eventTitle">Vels Group Of Instutions</div>

当有人点击相应的复选框时,我想填充“需求”输入框中“eventTitle”的值。i、 e如果在Vels仪表组的复选框上选中某个复选框,则我希望该复选框自动填充到名为“Requirement”的文本框中。如果单击多个复选框,我希望它以逗号分隔。下面是我试图获取的代码,但它不起作用并且没有定义

    <div class="wid100">
    <div class="eventTitle">Vels Group Of Instutions</div>
    <div class="eventDate">2017-07-25</div>
    <div class="eventVenue">This is world wide institute of technology </div>
    <div class="selectEvent">
        <input type="checkbox" class="seminar selected" id="179">
        <label for="179"></label>
    </div>
</div>

<div class="wid100">
    <div class="eventTitle">Title goes here</div>
    <div class="eventDate">2017-07-25</div>
    <div class="eventVenue">sdfdsafasdfdsafdsafsadfsdfsdf </div>
    <div class="selectEvent">
        <input type="checkbox" class="seminar" id="179">
        <label for="179"></label>
    </div>
</div>


<input type="text" name="Requirement" placeholder="Title 01" id="divclass" required="required" class="pull-left" />

<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>

.eventTitle
不是
.selected
的同级元素,.eventTitle是一个没有值的div元素,其中包含文本。换行

event_title =  $(".selected").siblings('.eventTitle').val();


您遇到的问题是因为
.eventTitle
不是单击复选框的同级,因此DOM遍历逻辑是错误的
div
元素也没有
val()
,因此应该使用
text()
html()

但是,您可以通过使用
map()
构建一个数组来改进逻辑,还可以实现所选事件标题的逗号分隔列表,然后在设置
\divclass
的值之前,可以
join()
。试试这个:

$(“.seminar”)。单击(函数(){
$(this.toggleClass('selected',this.checked));
var eventNames=$('.seminar:checked').map(函数(){
返回$(this).closest('.wid100').find('.eventTitle').text();
}).get().join(',');
$('#divclass').val(事件名称);
});

Vels仪器组
2017-07-25
这是世界理工学院
标题在这里
2017-07-25
SDFDSAFASDFDSAFDSAFSADFSDFDF

.eventTitle
不是
.selected
的兄弟姐妹。它是其父级的兄弟姐妹,即
。selectEvent
RAUSHAN KUMAR非常感谢这一切正常,一个首次出现的父级文本即将出现,如果未选中表示父级文本已删除,将如何编写此文本请帮助我。如何将“event\u title”文本值传递给其他输入类型文本框“divclass”要设置其他div的文本,请使用
$('#divclass').val(eventNames)RAUSHAN KUMAR,这很好,非常感谢您,先生。
event_title =  $(this).parent().siblings('.eventTitle').text();
event_title =  $(this).parent().siblings('.eventTitle').html();