2015-01-08 39 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

相關問題