2016-12-15 13 views
0

私は単純なウィザードで、前のボタンと次のボタンだけが必要です。 3番目と最後のステップでは、次のボタンがファイルアップローダを起動します。jquery steps - 最後のステップで次のボタンを表示したい

私はそれが簡単にボタン自体を参照するようにするためにこれをしなかった:

はこれまでのところ、私はこれを持っています。

$(document).ready(function() { 

    $("#wizard .actions a[href='#next']").attr("id","next_button"); 
    $("#wizard .actions a[href='#previous']").attr("id","previous_button") 

}); 

は次にここに私のコードの本体です:私は(currentIndex = 2)第三段階に到達すると

$("#wizard").steps({ 

bodyTag: "section", 
transitionEffect: "slideLeft", 
autoFocus: true, 
enableFinishButton: false, 
    enableCancelButton: false, 

onStepChanged: function (event, currentIndex, priorIndex) { 


     if (currentIndex ==2) { 
      console.log('currentIndex is:'+currentIndex); 
       //this returns '2' which is correct 

     $("#next_button").show(); 
     $(function(){ 
      $("#next_button").click(function(){ 
       //custom function here 
      }); 
     }); 

、次のステップボタンはので、私は$( "#を実行しようとしました消えますnext_button ")。show();しかし、それは動作しません。

何か助けていただければ幸いです。

+0

なぜこの準備関数** $(function(){....})**の間に使用 –

+0

なぜnext_buttonが消えるのですか? jquery-stepsでは、ステップ変更時にボタンが消えません。それを行うためのコードはありますか?より完全なコードを与えるべきです。 –

+0

その間の関数は、次のボタンがクリックされたときに起動する私のカスタム関数です。最後のステップで次のボタンが消えてしまうのは理にかなっていますが、それを上書きしようとしています。代わりに、私は最後のステップだけで$( "#final_button")を表示するために、 'finish'ボタンのために解決します。いずれも機能しません。そして、私は$( "#wizard .actions a [href = '#finish']")でそれを試しました。attr( "id"、 "finish_button"); – tomish

答えて

0

それはあなたがそのようにenableFinishButton: false を追加することによって、そうするように設定されているため、あなたはそれを削除し、単にラベル

labels: { 
    finish: "Next" 
} 
からではなく、「仕上げ」の最後のステップのボタンに「次」のテキストを変更する必要があります消えます

最後のボタンを使用すると、次と前のボタンに行ったように、このhrefの

<a href="#finish" role="menuitem">Next</a> 

だから、あなたはそれにカスタムIDを追加することができますいずれかになります。または、あなたは単に最後の「次へ」ボタンのクリックでカスタム関数を実行します。この

$('a[href="#finish"]').click(function() { 
    //custom function here 
}); 

のようなものを使用することができます。ステップなどを確認する必要はありません。

希望に役立ちます。

関連する問題