2013-04-04 47 views
-4

美好的一天。如何正确写入?

代码:

$('.op').click(function() { 
    var id=this.id; 
    $('.'+id).toggle(); 

}); 

我得到错误:{"error": "Please use POST request"}

请告诉我如何正确写?

+4

“如何写正确” - 这是什么意思?你的意思是“我如何正确写入?” – Barmar 2013-04-04 07:57:53

+2

这是一样的,但如果你想要.. – 2013-04-04 07:59:03

+1

当你在jsfiddle.net上发表一个表单时会发生这个错误,因为它不运行任何服务器脚本,除了它简单的AJAX回显脚本。 – Barmar 2013-04-04 08:00:39

回答

4

防止默认点击使用e.preventDefault()

$('.op').click(function(e) { 
    e.preventDefault(); 
    var id=this.id; 
    $('.'+id).toggle(); 

}); 
-1

你问一个很奇怪的问题。 POST请求与点击事件无关。

但是,IDS一般与#针对性,像这样

$('.op').click(function() { 
    var id=$(this).attr("id"); 
    $('#'+id).toggle(); 
}); 

我也改变了id属性访问的自由。

+2

你为什么将课程改为ID?如果他想切换ID,他可以执行'$(this).toggle()'。 – Barmar 2013-04-04 08:02:15

+0

“我还冒昧地改变了id属性的访问权限。”别。他们以前的方式是访问您引用的元素的'id' **属性**的最佳方式。你已经引入了两个完全不必要的函数调用,其中一个是错误的函数(使用'.prop()'而不是'.attr()')。 – 2013-04-04 08:31:06

3

这取决于什么.op是:

$('.op').click(function(e) { 
    e.preventDefault(); 
    $(this).toggle(); 
}); 

如果你坚持要用id(我不知道为什么),您必须使用$('#'+id).toggle();

编辑:作为@Barmar解释更多,你可以使用这个:

$('.op').click(function(e) { 
    e.preventDefault(); 
    var id=this.id; 
    $('.'+id).toggle(); 
}); 
+0

不是id。需要使用toogle'class = id = this.id' – 2013-04-04 08:04:57

+0

为什么你需要那个? – 2013-04-04 08:07:00

+0

因为它需要我) – 2013-04-04 08:10:56