2015-01-08 109 views
-3

我的菜单选项。当我在菜单选项中单击会有开放部分菜单下的我的HTML是想要在点击时显示每个元素

<table class="main-products"> 
    <tr> 
     <td><?php echo $item_name; ?></td> 
     <td>£ <?php echo $item_price; ?></td> 
     <td><a class="add-cart" href="javascript:void(0);" onclick="open_drop()"></a></td> 
    </tr> 
</table> 
<div class="item-menu"> 
    <form class="item-type"> 
     <input type="radio" name="radio" value="Inferno Hot" />Inferno Hot<br /> 
     <input type="radio" name="radio" value="Medium" />Medium<br /> 
     <input type="radio" name="radio" value="Jerk" />Jerk<br /> 
     <input type="radio" name="radio" value="Lemon & Herb" />Lemon & Herb<br /> 
     <input type="radio" name="radio" value="Mango & Lime" />Mango & Lime<br /> 
    </form> 
    <div class="fright"> 
     <a href="javascript:void(0);" class="add-to-cart" onclick="add_to_cart('<?php echo $item_name; ?>','<?php echo $item_price ?>');">Add To cart</a> 
    </div> 
</div> 

和我的javascript:

function open_drop(){ 
    var $this = $('.item-menu'); 
    $this.each('click', function(){ 
     if ($('.item-manu').is(':visible')) { 
      $this.hide(); 
     }else{ 
      $this.show(); 
     }('hi'); 
    }); 
} 

我想告诉每个元素的每个菜单,但我没有做到这

+0

林假设这给错误等你不需要循环,当你说你'失败'代码现在做什么?你在开发工具中遇到什么错误?我从来没有见过这样的'点击'事件,我不认为js代码是有效的 – atmd

+0

事件handeler被附加到HTML看到onclick =“” – hadendu

+0

你写.item-manu一次,.item菜单一次,错字,还是它必须是那样? – Neat

回答

0

添加点击事件,你的产品清单,你需要循环像这样

var items = $('.item-menu input'); 

items.each(function (index, item) { 

    $(item).on('click', function() { 
     // do something 
    }); 

}); 

编辑:正如指出的那样,现在显然太早了。下面 是更好的,除非你想使用索引,并做一些基于它(但即使如此,你可以使用索引())

$('.item-menu input').on('click', function() { 
    // do something 
}); 
+1

如果你所做的只是绑定一个点击事件,你并不需要每个事件 – Pete

+0

Doh,你是对的。发现得好。 – atmd

+0

@atmd NOW它是这样的,但不工作。 [链接](https://gist.github.com/anonymous/01a5f22372d35e0894a3) – hadendu

相关问题