Javascript 当我在一个数组中拥有所有ID,并且在文档准备就绪时填充这些ID时,如何在运行时附加click事件?

Javascript 当我在一个数组中拥有所有ID,并且在文档准备就绪时填充这些ID时,如何在运行时附加click事件?,javascript,jquery,Javascript,Jquery,我有以下代码 <script type="text/javascript"> $(document).ready(function () { var dataAnalysisDataFileTableIDs = $("#dataAnalysisDataFileTable tr[id]").map(function () { return this.id; }).get(); //for(var key in d

我有以下代码

    <script type="text/javascript">
        $(document).ready(function () {
            var dataAnalysisDataFileTableIDs = $("#dataAnalysisDataFileTable tr[id]").map(function () { return this.id; }).get();

            //for(var key in dataAnalysisDataFileTableIDs) {
            //    var id = "#" + dataAnalysisDataFileTableIDs[key];
            //    $(id).click(function () {
            //        alert("[" + index + "][" + value + "]");
            //    });
            //}
            //$.each(dataAnalysisDataFileTableIDs, function (index, value) {
            //    var id = "#" + dataAnalysisDataFileTableIDs[key];
            //    $(id).click(function () {
            //        alert("[" + index + "][" + value + "]");
            //    });
            //});
            $("#dataAnalysisDataFileTable tr[id]").each(function (i, elem) {
                $(elem).click(function () { alert("[" + i + "][" + this.id + "]"); });
            });
            $("#aaa").click(function () {
                alert("meow");
            });
        });
    </script>

$(文档).ready(函数(){
var dataAnalysisDataFileTableIDs=$(“#dataAnalysisDataFileTable tr[id]”).map(函数(){return this.id;}).get();
//for(DataAnalysisDataFileTableId中的var键){
//var id=“#”+dataAnalysisDataFileTableIDs[key];
//$(id)。单击(函数(){
//警报(“[”+索引+“][”+值+“]”);
//    });
//}
//$.each(DataAnalysisDataFileTableId,函数(索引,值){
//var id=“#”+dataAnalysisDataFileTableIDs[key];
//$(id)。单击(函数(){
//警报(“[”+索引+“][”+值+“]”);
//    });
//});
$(“#dataAnalysisDataFileTable tr[id]”)。每个(函数(i,元素){
$(elem)。单击(函数(){alert(“[”+i+“][”+this.id+“]);});
});
$(“#aaa”)。单击(函数(){
警惕(“喵喵”);
});
});

它不起作用我也尝试了评论部分中的一个,它与“for in”的作用相同。它不起作用,但当我将单击连接到id#aaa时,它工作正常。当我拥有数组中的所有id并且我希望能够将事件连接到它们时,我如何处理这个问题?

我已经修补了可能的错误。但我无法解析
变量

    for(var index=0, length=dataAnalysisFileTableIDs.length; index++) {
        var key = dataAnalysisFileTableIDs[index];
        var id = "#" + dataAnalysisFileTableIDs[key];
        $(id).click(function () {
            /* Value ? It's not defined*/
            alert("[" + index + "][" + /*value +*/ "]");
        });
    }

dataAnalysisFileTableIDs
是一个数组。要在数组中循环,必须使用
for(init_index;condition;increment)
循环。可以通过
name\u of_array[index]

来获取密钥,只需使用每一个就可以了?像这样:

<html>
<head><script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script></head>
<body>
<table id="dataAnalysisDataFileTable">
<tr id="foo"><td>foo</td></tr>
<tr id="bar"><td>bar</td></tr>
</table>
<script type="text/javascript">
  $(document).ready(function () {
    $("#dataAnalysisDataFileTable tr[id]").each(function(i, elem) {
      $(elem).click(function() { alert("[" + i + "][" + this.id + "]") } );
    });
  });
</script>
</body>
</html>

福
酒吧
$(文档).ready(函数(){
$(“#dataAnalysisDataFileTable tr[id]”)。每个(函数(i,元素){
$(elem)。单击(函数(){alert(“[”+i+“][“+this.id+”]);
});
});
for(在dataAnalysisDataFileTable中使用两次WORDDATA){+1;}