Loading ...
Sorry, an error occurred while loading the content.

33627Re: Check SubMenu Items

Expand Messages
  • arup832003
    Jul 1, 2008
    • 0 Attachment
      Hi Caridy Patino,

      Thanks for your reply.
      In my example
      var items = oMenu.getSubmenus(); not giving the set of SubMenu Items
      attached to that MenuItem.

      I just want to check/unchech the submenu Items by clicking on them. I
      can do that by using the "checked" configuration property of
      YAHOO.widget.MenuItem.

      But, I amn't able to get all the Submenu Items of the selected
      MenuItem as an Object array of YAHOO.widget.MenuItem.

      Here is the code.

      *************************************************************
      <script type="text/javascript">

      /*
      Initialize and render the Menu when its elements are
      ready
      to be scripted.
      */

      var oMenu;

      YAHOO.util.Event.onContentReady("productsandservices",
      function () {

      /*
      Instantiate a Menu: The first argument passed to the
      constructor is the id of the element in the page
      representing the Menu; the second is an object
      literal
      of configuration properties.
      */

      oMenu = new YAHOO.widget.Menu("productsandservices", {
      position:
      "static",
      hidedelay: 750,
      lazyload: true });


      /*
      Define an array of object literals, each containing
      the data necessary to create a submenu.
      */

      var aSubmenuData = [

      {
      id: "communication",
      itemdata: [
      { text: "360",checked: true, url:
      "javascript:checkItem();" },
      { text: "Alerts", url:
      "http://alerts.yahoo.com" },
      { text: "Avatars", url:
      "http://avatars.yahoo.com" },
      { text: "Groups", url:
      "http://groups.yahoo.com " },
      { text: "Internet Access", url:
      "http://promo.yahoo.com/broadband" }
      ]
      }

      ];


      // Subscribe to the Menu instance's "beforeRender" event

      oMenu.subscribe("beforeRender", function () {

      if (this.getRoot() == this) {

      this.getItem(0).cfg.setProperty("submenu",
      aSubmenuData[0]);
      }

      });


      /*
      Call the "render" method with no arguments since the
      markup for this Menu instance is already exists
      in the page.
      */

      oMenu.render();

      });


      function checkItem()
      {
      //Check the Selected SubMenuItem.

      //var menuitem=oMenu.getItem(0).cfg.getProperty('checked');


      //oMenu.getItem(0).cfg.setProperty('checked',true);

      var subMenuArr = oMenu.getSubmenus();
      alert(subMenuArr.join('|'));

      }

      </script>
      *************************************************************

      Please, help me to get rid of this Issue.

      Thanks,
      Arup

      --- In ydn-javascript@yahoogroups.com, "Caridy Patino" <caridy@...> wrote:
      >
      > Hey,
      >
      > To access to a certain element based on the index:
      > var label = oMenu.getItem(0).cfg.getProperty("text");
      >
      > To retrieve an array of all submenus that are direct descendants of a
      > Menu instance, use the getSubmenus method:
      > var items = oMenu.getSubmenus();
      >
      > Best Regards,
      > Caridy Patino (caridy at yahoo-inc.com)
      >
      > --- In ydn-javascript@yahoogroups.com, "arup832003" <arup832003@>
      > wrote:
      > >
      > > Hi all,
      > >
      > > How can I access all the SubMenu Items of a MenuItem. So that, I can
      > > manipulate it's Configuration properties.
      > >
      > > But, I amn't getting How can I access all the SubMenu Items of a
      > > MenuIten as an object array of MenuItems.
      > >
      > > Please, help me in this regard.
      > >
      >
    • Show all 6 messages in this topic