2014-11-04 171 views
0

我有一个jquery脚本是这样的:错误:语法错误,无法识别的表达式:(。)点

$('.' + ajax_object.cartclass).on('click','a.add',function(e) { 
     e.preventDefault(); 

     // get closest parent div 
     var cpd = $(this).closest('div.cartpn'); 
     cpd.addClass('code'); 

...

'.'似乎是问题因某种原因,因为这个原因,我一直在编写语法错误。

错误:语法错误,无法识别的表达式:。

任何想法为什么?

+3

'ajax_object.cartclass'的值是什么?像'“..foo”'这样的字符串会抛出相同的异常。 – Sampson 2014-11-04 19:32:32

+1

请完成您的标题 – danronmoon 2014-11-04 19:33:22

+0

它不会在标题中添加一个点。我用括号添加了它。 – 2014-11-04 19:36:39

回答

0

确保ajax_object.cartclass已正确定义。

var ajax_object = {}; 
ajax_object.cartclass = "testing"; // The class you're trying to listen to. 

您的代码应后正常工作,假设你有一个定义ajax_object.cartclass类的元素包含add类的a元素:

<div class="testing"><a class="add">Test this</a></div> 

下,现在应该工作:

$('.' + ajax_object.cartclass).on('click','a.add',function(e) 
{ 
    console.log("hey"); // Console will output "hey" now. 
    e.preventDefault(); 
}); 

之后你的代码应该可以正常工作。

这是Demo

+0

就是这样,不错! var ajax_object = {};清理错误(尽管代码工作不管)。 – 2014-11-04 19:40:24

+0

@OlliccaMindstorm不客气,随时接受答案,当你可以:) – Jonast92 2014-11-04 19:41:37

+0

当然。非常感谢。 – 2014-11-04 19:42:16

相关问题