2017-01-08 26 views
0

クリックしたときにボタンがあります.mo関数が呼び出されるようにしたいのですが、2回目のクリックでのみその関数を実行します。 ボタンの2回目のクリックで呼び出される関数

mealplan()関数

が正しく実行されている

HTML

<button class="" id="mealbtn" onclick="mealplan()">CLICK ME</button> 

私はmealplan()とクリック時に呼び出される.moの機能の両方を必要とします。

function mealplan(){ 
     // also runs on click   
     } 

     Shopify.mo = function(q,ref) { 
    // this is the function that I need to run uupon click, but it is only running on second click 
     }; 

     $('#mealbtn').on('click', function(e) { 
     // should call the .mo function on click 
     Shopify.mo(Shopify.queuemeals,"note"); 

     });  
+0

あなたは余分な閉じ括弧を持っているようです。食事計画機能の中で$( '#mealbtn')。on( 'click')ですか? –

+0

@chris cozzens:あなたも問題のコードを修正しましたか?そうしないと、仲間のユーザーが間違いを犯すのを助けるでしょう。可能であれば質問に答えた方法に戻してください。 –

+0

@NikhilGirraj正しいものはありません、下記の回答を参照してください –

答えて

0

jQuery on('click')メソッドは、ボタンをクリックしたときにのみ発生します。 ボタンがクリックされると、ボタンのクリックメソッドが初期化されることをコードで示唆しています。それを修正する

、お使いのjQueryのイベントは、ページがロード走る機能に移動:

$(document).ready(function() { 
    $('#mealbtn').on('click', function(e) { 
     // should call the .mo function on click 
     Shopify.mo(Shopify.queuemeals,"note"); 
     }); 
}); 
関連する問題