【问题标题】:using Jquery selector with an array [duplicate]使用带有数组的 Jquery 选择器[重复]
【发布时间】:2014-05-11 03:12:29
【问题描述】:

我正在尝试将 jquery 选择器与对象数组一起使用。 这是一个例子..

//Declaration
    var filterItems = Array();
    filterItems[0] = { clickDiv: "CategoryPanelHeader", div: "NarrowByCategoryPanelWrapper" };
    filterItems[1] = { clickDiv: "ExpandYourResultsHeader", div: "ExpandResultPanelWrapper" };
    filterItems[2] = { clickDiv: "Keyword", div: "KeywordDiv" };
    filterItems[3] = { clickDiv: "Manufacturer", div: "NarrowByManufacturerPanelWrapper" };
    filterItems[4] = { clickDiv: "Credentials", div: "CredentialsDiv" }; 

和选择器

$(document).ready(function () {
  //binds the click events...
  for (var i = 0; i < filterItems.length; i++) {
     $('#'+ filterItems[i].clickDiv).live('click', function () {
     togglemenu($('#' + filterItems[i].div));
     });
  }
});

当我发出警报但 jquery 没有绑定点击事件时,我能够正确读取每个项目。

我将如何使用数组来绑定 onclick 事件?

【问题讨论】:

标签: jquery arrays jquery-selectors


【解决方案1】:

我明白了! 你只需要调用一个外部函数

   $(document).ready(function () {
            // gets all the click parameters...
            for (var i = 0; i < filterItems.length; i++) {
                bindClicks(($('#' + filterItems[i].clickDiv)), ($('#' + filterItems[i].div))  );
            }
        });
           function bindClicks(clickdiv, expanddiv) {
             //binds the click events
            clickdiv.click(function () {
                togglemenu(expanddiv);
            });
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-25
    • 2021-03-31
    • 2015-07-01
    • 2013-07-04
    • 1970-01-01
    • 2016-06-01
    • 2011-01-21
    相关资源
    最近更新 更多