【发布时间】:2013-03-15 11:57:24
【问题描述】:
我在这段代码中遇到语法错误,但我不知道为什么。
$(".choose-one .monthly, .choose-one .yearly").live("click", function() {
billing_selection();
});
function billing_selection() {
if($(this).hasClass("yearly") {
$(this).addClass("selected");
$(".billing-options-hidden option:eq(1)").attr('selected', 'selected');
} else {
$(this).addClass("doSomething");
}
}
这是我的第一篇文章,请温柔。
【问题讨论】:
-
请注意,您的函数中的
this并不是指被点击的元素。 -
这是我的下一个问题。为什么
this不引用点击的对象? -
因为你是在handler的上下文中调用函数,
this这里指的是元素,你可以编码,$(".choose-one .monthly, .choose-one .yearly").live("click", billing_selection)。话虽如此,请注意live方法已弃用,您可以改用on方法。
标签: javascript jquery function logic syntax-error