2009-06-29 13 views
1

JavaScriptを使用してASP.NET Wizardコントロールの[次へ]ボタンを非表示にしたいとします。これが可能かどうか誰にでも教えてもらえますか?これを行う方法についてはjavascriptスニペットを投稿してください。ありがとう!asp.netを非表示にするJavaScriptの次のボタン

答えて

2

2オプション...

  1. TemplatedWizardStep - あなたは自分でボタンを作成し、コントロール名またはいずれかを使用することができ、そのようCSSクラスをボタン上に置いて、&をjavascriptまたはjQueryでオフにします。
  2. StartNextButtonStyleを使用して次のボタンにCSSクラスを設定し、jQueryでボタンをつかむことができます。この1例は以下の通りです(私はチェックボックスは、ボタンを有効にする前にチェックされているかどうかをチェックしています)

ウィザードのマークアップ...

<asp:Wizard ... > 
    <StartNextButtonStyle CssClass="StandardButton StartNextButton" /> 
    <WizardSteps> 
     <asp:WizardStep runat="server" ID="AgreementStep" StepType="Start"> 
      <asp:CheckBox runat="server" ID="AcceptAgreement" Text="I agree to the agreement terms." TextAlign="Left" onclick='EnableNextButton();' CssClass="NormalTextBox AcceptedAgreement" /> 
     </asp:WizardStep> 
    </WizardSteps> 
</asp:Wizard> 

(jQueryのを使用して)Javascriptを有効/無効にします次のボタン:

<script type="text/javascript"> 

    function EnableNextButton() { 

     var button = jQuery(".StartNextButton") 
     var checkBox = jQuery(".AcceptedAgreement input:checkbox"); 

     if (checkBox.is(':checked')) 
      button.removeAttr("disabled"); 
     else 
      button.attr("disabled", "disabled"); 

    } 

</script> 
+0

私はあなたの例に興味がありますが、jQueryのnoobieです。 ".StartNextButton"テキストを照会するときに、CSSクラス名を検索しますか? –

+0

はい、CSSクラス名を検索しています。この例では、jqueryのセレクタのために2つのクラス名を使用していますので、名前が何であってもコントロールを見つけることができます。 –

0

question #267191の回答を使用して問題を解決できるはずです。 (わずかに修正)のリンクから

var theControl = document.getElementById("btnNext"); 
theControl.style.display = "none"; 

// to show it again: 
theControl.style.display = ""; 
ここ
+0

を想像することはできませんが、それはですウィザード私ができない次のボタン再出発。私は検索する正しいIDを見つけることができないようです。 –

+0

えええええええええええええええええええええええええええええええええええええええええ、申し訳ありません... –

0

ここに、これらのコントロールを配置するサーバーサイドコードがあります。あなたはそこからそれを取ることができます...

私はチェックアウトシーケンスのためにウィザードを使用しようとしていたときにこの問題に遭遇しました。私はこれらの投稿をたくさん読んでいます。これらのボタンを見つけるためにたくさんのフープを飛ばしています。彼らは、あなたがカスタムステップテンプレートを追加し、コントロールなどをトレースしなければならないと伝えます。

良いニュースはそれほど難しいことではありません。カスタムテンプレートを使用する必要はありません。ページ上でバニラウィザードコントロールをドラッグして、ステップを追加すれば、このコードはうまく動作します。私は私の生産アプリでこのコードを使用しています。ここで

Dim btnNext As Button = Wizard1.FindControl("StepNavigationTemplateContainerID").FindControl("StepNextButton") 


Dim btnPrevious As Button = Wizard1.FindControl("StepNavigationTemplateContainerID").FindControl("StepPreviousButton") 

btnNext.Visible = False 



btnPrevious.Visible = False 

は、最後のステップ...(私は最初にそれがFinishFinishButtonだろうと思った彼らの命名規則を使用して(... [完了]ボタンに別の名前に注意してください。)笑

の例です
Dim btnFinish As Button = Wizard1.FindControl("FinishNavigationTemplateContainerID").FindControl("FinishButton") 

Dim btnPrevious As Button = Wizard1.FindControl("FinishNavigationTemplateContainerID").FindControl("FinishPreviousButton") 


btnFinish.Visible = FalsebtnPrevious.Visible = False 

あなたが第一パネルで[次へ]ボタンを無効にしたいが、ここにもその1つのためのコードであるだろう、なぜ私は定期的にボタンを非表示にすることができます。

Dim btnNext As Button = Wizard1.FindControl("StartNavigationTemplateContainerID").FindControl("StartNextButton") 


btnNext.Visible = False 
関連する問題