2017-07-12 11 views
0

テキストボックスとポップアップに保存ボタンがあり、テキストボックスに必要なフィールドバリデーターがあります。ユーザーが誤ってテキストボックスにデータを入力して、必要なフィールドバリデーターを保存するのを忘れた場合は、シナリオがあります。これは期待されています。しかし、ユーザーがテキストボックスにデータを入力して「保存」をクリックすると、レコードは最初のクリックで保存されず、追加のクリックが必要になります。私はこの理由を知っています:初めてボタンをクリックしたときにはポストバックは行われませんが、2度目はデータを保存して保存します。JavaScriptの問題:ASP.NETで保存ボタンをクリックしてポストバックできない

誰でもこの回避策を知っていますか?エンドユーザーは、その追加のクリックによって迷惑になります。それに関連するJavaScript機能はありませんのでご注意ください。ブラウザから自動生成されたjavascriptです。

コード:

<div class="row"> 
           <div class="col-md-12"> 
            <div class="form-group"> 
             <asp:Label runat="server" Text="" AssociatedControlID="txtTitle"> 
                Title<span class="text-danger">*</span> 
             </asp:Label> 
             <asp:TextBox runat="server" CssClass="form-control" ID="txtTitle" > 
             </asp:TextBox> 
             <asp:RequiredFieldValidator runat="server" ControlToValidate="txtTitle" Display="Dynamic" ErrorMessage="Required" ValidationGroup="questionTitle" CssClass="text-danger"> 
             </asp:RequiredFieldValidator>     
            </div> 
           </div> 
          </div> 

保存ボタン:

<div class="row"> 


<div class="col-md-3 col-md-offset-9"> 
           <asp:LinkButton runat="server" ID="lnkSave" CssClass="btn btn-lg btn-block btn-success btn-lg" role="button" ValidationGroup="questionTitle" OnClick="lnkSave_Click"> 
          <i class="fa fa-floppy-o"></i>&nbsp;Save 
           </asp:LinkButton> 
          </div> 
         </div> 

答えて

0

これは、バリに共通の問題のように思えます。

バリデータのエラーは、あなたのバリデータDisplayは、エラーメッセージが表示されDynamic、に設定されている場合、テキストボックスが

に負け焦点は、明らかに、それがバリデータのエラーをクリアするトリガが発生する時期クリアすると仮定されます失敗します。

ので、クリック二回(最初の以前の引き金となってますが失敗している必要がありますトリガ明確な誤り、第2のトリガ実際のフォームのポストをクリックしてください)

ソリューションはDisplay

Staticするための詳細情報のチェックアウト

あなたのRequiredFieldValidatorを変更することです

RequiredFieldValidator have to click twice
RequiredFieldValidator requires user to click twice

+0

感謝!!私の問題を解決したアラン。 – user3147594

+0

@ user3147594うれしいです。あなたの答えを解決したら、将来の読者がそれをはっきりと見ることができるように、答えとしてマークしてください。 –

関連する問題