2012-12-17 21 views
0

你好,隊友我有一個問題。我有一個點擊事件,顯示()一個最初隱藏的div點擊。打開的div有一個輸入表格如果滿足條件,如何使用一個元素來觸發點擊(一個接一個)?

$(".coll-menu-footer input.menu-btn").click(function(e) { 
    $("div.new-coll").show();}) 
}); 

我想使用相同的接力棒元素來提交它只顯示它的div是打開的。

爲了讓問題變得簡單明瞭,每個fireup都有一個元素,同一個事件,不同的動作。

首先點擊顯示隱藏的div,然後點擊提交輸入數據。這是怎麼可能的隊友。

回答

0

幾種可能的方式去:

  1. 使用jQuery的.toggle()自動應用在每一次點擊的交替動作。
  2. 在您的事件處理程序中,檢查頁面的狀態(打開/關閉)並根據該狀態確定要執行的操作。
  3. 第一次點擊後,卸載第一個事件處理程序,安裝一個不同的執行不同的操作,等等第三,第四等...
  4. 保留一個計數器的點擊次數和您的單一事件處理程序,查看櫃檯並決定採取何種行動。
0

您可以使用JQuery來確定div是否仍然隱藏。如果它仍然隱藏,顯示它。如果它沒有隱藏,請執行您的提交。

$(".coll-menu-footer input.menu-btn").click(function(e) { 
    if($("div.new-coll").is(":visible")) 
    { 
     //perform your submission code 
    } 
    else 
    { 
     $("div.new-coll").show(); 
    } 
}); 
+0

嘿感謝budy我不能認爲的:可見的過濾器。 – user1910825

0

您可以創建按鈕的兩種狀態,第一種顯示隱藏的div,第二種提交表單。

$(".coll-menu-footer").on('click', 'input.menu-btn:not(.clicked)', function(e) { 
    $("div.new-coll").show(); 
    $(this).addClass('clicked'); 
}); 

$(".coll-menu-footer").on('click', 'input.menu-btn.clicked', function(e) { 
    $(this).removeClass('clicked'); 
    // submit and other code here 
}); 

demo

相關問題