我还是jQuery的新手,并试图将这个问题弄清楚,希望有人可以提供帮助。我有这个jQuery代码,需要根据被点击的元素传递不同的值。创建的每个元素在其ID中都有唯一的编号(这是必需的)。如果我手动将jQuery代码更改为特定ID并调用,例如:
http://mysite/examplepost?effect=113
这会奏效。但我需要$('#div- ...这里有不同的数字......')才能在同一页面上处理多个元素。我已经让PHP方使用以下方法生成不同的值:
if($_GET['effect'] == $id){
我只需要使用它来处理ajax,以便它不会重新加载页面。
示例:
$('#div-113').on('click', function() {
var dataString = 'effect=113';
jQuery.ajax(
{
type:'GET',
url:'?',
data: dataString,
success: function(data){
alert('Works');
}
}
);
});
任何帮助都将不胜感激。
答案 0 :(得分:2)
我会为您的所有div
提供一个共同的类名(即myClickableDiv
)以及一个特定的data-id
。
通过这种方式,您可以按照常用的类名来定位所有div,而不必根据id
的形成方式找出它。 data-id
允许您只向Click处理程序提供非常具体的信息(如整数),而不必解析id
。
HTML:
<div class=".myClickableDiv" id="div-XXX" data-id="XXX">My Div</div>
JS:
$('.myClickableDiv').on('click', function() {
var dataString = $(this).attr('data-id');
jQuery.ajax({...});
});