无法获取元素内的字符串-对象文字javascript
我试图获取两个div无法获取元素内的字符串-对象文字javascript,javascript,jquery,Javascript,Jquery,我试图获取两个div.class date和.class time的字符串,但是我得到了一个未捕获的类型错误“e.sides不是函数”。这可能是一个基本的错误,但我无法解决。任何指向正确方向的指示都将不胜感激 var Cc={ init:function(){ Cc.bindEvent(); }, bindEvent:function(){ $('.book class')。在(“单击”,函数()上){ 让selectedclass=this; Cc.parseClass(selectedcl
.class date
和.class time
的字符串,但是我得到了一个未捕获的类型错误“e.sides不是函数”。这可能是一个基本的错误,但我无法解决。任何指向正确方向的指示都将不胜感激
var Cc={
init:function(){
Cc.bindEvent();
},
bindEvent:function(){
$('.book class')。在(“单击”,函数()上){
让selectedclass=this;
Cc.parseClass(selectedclass);
});
},
parseClass:函数(selectedclass){
让classdate=selectedclass.sides('.class date').text();
让classtime=selectedclass.sides('.class time').text();
日志(classdate,classtime);
}
}
jQuery(文档).ready(函数($){
Cc.init();
});代码>
1月1日,星期四
18:00 — 20:00
图书班
在click
回调函数中,这是一个HTMLElement,您将其视为jQuery对象
更改让selectedclass=this
to让selectedclass=$(这是)
在click
回调函数中,这是一个HTMLElement,您将其视为jQuery对象
更改让selectedclass=this
to让selectedclass=$(这是)代码>此
不是jQuery对象。它是单击项的DOM对象
使用$(this)
,为了更清楚,在vars上添加一个$
,以显示您期望并处理jQuery对象
var Cc={
init:function(){
Cc.bindEvent();
},
bindEvent:function(){
$('.book class')。在(“单击”,函数()上){
设$selectedclass=$(此项);
Cc.parseClass($selectedclass);
});
},
parseClass:函数($selectedclass){
让classdate=$selectedclass.sides('.class date').text();
让classtime=$selectedclass.sides('.class time').text();
日志(classdate,classtime);
}
}
$(函数(){
Cc.init();
});代码>
1月1日,星期四
18:00 — 20:00
图书班
此
不是jQuery对象。它是单击项的DOM对象
使用$(this)
,为了更清楚,在vars上添加一个$
,以显示您期望并处理jQuery对象
var Cc={
init:function(){
Cc.bindEvent();
},
bindEvent:function(){
$('.book class')。在(“单击”,函数()上){
设$selectedclass=$(此项);
Cc.parseClass($selectedclass);
});
},
parseClass:函数($selectedclass){
让classdate=$selectedclass.sides('.class date').text();
让classtime=$selectedclass.sides('.class time').text();
日志(classdate,classtime);
}
}
$(函数(){
Cc.init();
});代码>
1月1日,星期四
18:00 — 20:00
图书班
您也可以跳过bindEvent
中的匿名函数,单击handler并将CC.parseClass
作为参考传递。它会将parseClass
中this
的上下文更改为发生事件的元素,在该元素上使用this
var Cc = {
init: function() {
Cc.bindEvent();
},
bindEvent: function() {
$('.book-class').on("click", Cc.parseClass);
},
parseClass: function(event) {
// `this` is element from event handler
let $selectedclass = $(this);
let classdate = $selectedclass.siblings('.class-date').text();
let classtime = $selectedclass.siblings('.class-time').text();
console.log(classdate, classtime);
}
}
$(function() {
Cc.init();
});
您还可以跳过bindEvent
单击处理程序中的匿名函数,并将CC.parseClass
作为引用传递。它会将parseClass
中this
的上下文更改为发生事件的元素,在该元素上使用this
var Cc = {
init: function() {
Cc.bindEvent();
},
bindEvent: function() {
$('.book-class').on("click", Cc.parseClass);
},
parseClass: function(event) {
// `this` is element from event handler
let $selectedclass = $(this);
let classdate = $selectedclass.siblings('.class-date').text();
let classtime = $selectedclass.siblings('.class-time').text();
console.log(classdate, classtime);
}
}
$(function() {
Cc.init();
});
感谢您抽出时间回复,这确实是最重要的problem@CalAlt当然我很高兴能帮上忙。祝你好运。谢谢你花时间回复,这确实是最重要的problem@CalAlt当然我很高兴能帮上忙。祝你好运