2016-12-13 6 views
0

私はトリビアゲームを作成しています。正しい、間違った、答えられていない質問をすべて表示しています。この関数の終わりに 1つのボタンが2つのタスクを実行するため、jQueryで2番目の関数を呼び出す必要があります

function displayResults() { 
    $('#timer').html("Correct answers: " + correct); 
    $('#fiveSec').html("Incorrect answers: " + incorrect); 
    $('#question').html("Unaswered: " + unanswered); 
    $('#correct-answer').empty(); 
    $('#answers').append('<input type="button" class="btn btn-primary" "start-button" value="Play Again">'); 
} 

、ボタンの内側に、私はゲームを再度実行を開始し、この機能のための方法を持っている必要があります。

$('#start-button').on('click', function() { 
    currentQuestion = 0; 
    correct = 0; 
    incorrect = 0; 
    unanswered = 0; 
    count = 30; 
    five = 5; 
    currentTeamsLength = 0; 
    displayQuestion(); 
    $(this).remove(); 
}); 

だから、これ#start-buttonは、ゲームを開始し、私はゲームが終了するとdisplayResultsの内部で再びそれを上に実行したい同じボタンです。何か案は?

+0

"start-button"はid属性が見つからないようです。 –

+0

yeaはこれを送信した後に気付きましたが、何も変更されませんでした。 ( '#start-button')。on( 'click'、funciton()をもう一度実行すると、今は私を狂わせてしまいます。私に何かエラーがあった場合、その最終ページにplayagainボタンが表示されたときにそれをクリックしても何も起こりません。 –

答えて

0

Jsutこの

$('#start-button').on('click', startGame) 

function startGame(){ 
    currentQuestion = 0; 
    correct = 0; 
    incorrect = 0; 
    unanswered = 0; 
    count = 30; 
    five = 5; 
    currentTeamsLength = 0; 
    displayQuestion(); 
    $(this).remove(); 
}); 

ような新しい機能を作成し、手動

$('#start-button').trigger("click") 
+0

これを関数から分離して、そのページに追加されたすべての "#start-button" .on();と –

0

変更ボタンのようにdisplayResultにクリックトリガすることができますdisplayResults

それとも

からこの関数を呼び出します最初に押されたときにテキストが表示され、ボタンのテキストに基づいて条件を満たしていれば、別の関数を実行します。

$('.start-button').trigger('click'); 

あなたのボタンを修正してください、あなたはただ、次のようにdisplayQuestions()からclickイベントでゲームをre-triggerする必要が

1

(私はあなたの質問は非常に明確ではありません、これはあなたが求めていたものだった願っています)以下のように、

$('#answers').append('<input type="button" class="btn btn-primary start-button" value="Play Again">'); 

はまた、あなたが委任方法、

でクリックイベントをバインドする必要があります
$("#answers").on('click', '.start-button', function(){ 
     // your code logic 
}); 

idボタンがないので、クラスセレクタを使用する必要があります。

+0

私は言われたこの行には何かがあります。$( '#answers')。append( '');あなたがそれをクリックしたときにゲームが実行されないようにしています –

+0

それは動作しません。私はこの行に何かがあると言われました... $( '#answers')。append( '');それが行方不明になっているので、実行を中止しています –

+0

@noobDevel_up_er更新された回答を試してください。あなたはidを持っていないので、あなたのボタンも修正する必要があります。 – ScanQR

0

私の間違ったミス。すべてが$( '#answers')にあった。append( ''); id = '#start-button'には#は必要ありませんでした。 (click)、関数()を$(document).on( 'クリック'、 'スタートボタン'関数()に変更した後、いくつかのdivをクリアしなければならなかったdisplayResults関数内で

関連する問題