我正在使用JQuery ajax将新内容加载到页面中,在服务器端我加载了一个新的div:
<div id="newFuncDiv" onmousedown="javascript:newFunc("VAR");">Click me</div>
在以前的案例中,我使用了如下函数:
function newFunc(){$("#newFuncDiv").click(function(){alert("something");});}
但是在这种情况下点击这个div我需要传递一个变量,我从服务器端的db中提取,我怎么能实现这个,就像我添加newFunc();使用ajax响应它不起作用,
编辑:
顺便说一句,忘了说我正在循环来自服务器的响应,所以我需要传递的变量对于每个div都是唯一的。答案 0 :(得分:1)
因为你正在使用jquery,我构建了click处理程序jquery样式并将数据对象附加到html元素:
<div id="newFuncDiv" data-foo="bar">Click me</div>
$("#newFuncDiv").on('click',function(){
alert("something" + $(this).data('foo'));
});
答案 1 :(得分:0)
您可以使用this
来引用该div。
function newFunc(myVar) {
$(this).click(function(){
alert(myVar);
});
}
答案 2 :(得分:-1)
您可以将变量保存到每个div的某个属性中,并为每个div分配相同的类a,如此
<div class="clickme" id="youvar1"></div>
<div class="clickme" id="youvar3"></div>
<div class="clickme" id="youvar3"></div>
然后在jquery
$(document).ready(function(){
$(".clickme").click(function(){
var uniquevar = $(this).attr('id');
/*your ajax code here*/
});
});
希望这个帮助