通过onmousedown为新添加的ajax运行js函数

时间:2013-03-07 08:11:01

标签: php jquery ajax

我正在使用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都是唯一的。

3 个答案:

答案 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*/
    });

});

希望这个帮助