0

我有以下两个功能:

$(".content").click( function() {
    var id = this.id;
    $.get("InfoRetrieve", { theid:id }, addContent );
});

function addContent(data){
    $("#0001").append(data);
}

我需要将“id”变量从第一个函数传递给 addContent 函数,我不太明白它是如何工作的。在上面的示例中,我将“数据”变量隐式传递给 addContent 函数(看起来)。我会做这样的事情:

在第一个函数中 addContent -- 变成 --> addContent(id)

在第二个功能

addContent(data) -- 变成 --> addContent(data,id)

还是完全不同的东西?

编辑:我按照丹尼斯的建议进行了修改,但是现在似乎什么也没发生 - 以前我进行了一些硬编码,所以我能够看到我的“数据”被附加到正确的位置:

$(".content").click( function() {
var id = this.id;
$.get("InfoRetrieve", { theid:id }, addContent {addContent(data, id)}  );
});

function addContent(data, id){
alert(id);
$("#0001").append(data);
}

另一个编辑Firefox 说:
参数列表后缺少 ) [Break on this error] $.get("InfoRetrieve", { theid:id ..., addContent {addContent(data, id)} );\n
.... 但是这似乎没有意义,因为据我所知,所有括号都与其他内容匹配。

4

2 回答 2

1

尝试:

$(".content").click( function() {
  var id = this.id;
  $.get("InfoRetrieve", { theid:id }, function() {
    addContent(data, id);
  });
});

function addContent(data, id){
  alert(id);
  $("#0001").append(data);
}
于 2009-12-09T07:19:39.413 回答
1

尝试

$.get("InfoRetrieve", { theid:id }, function(data) {addContent(data, id)} );
于 2009-12-09T07:11:15.917 回答