2

局所的には機能します。「自分のマシンで機能する」シンドロームはわかっていますが、理由がわかりません。

シンプルなウェブページ、フィールド、必須のフィールドバリデーターなど

<asp:textbox id="tbEmail" runat="server" CssClass="field"></asp:textbox>                                            <asp:requiredfieldvalidator id="Requiredfieldvalidator2" runat="server" Display="Dynamic" ControlToValidate="tbEmail" ErrorMessage="Email is required" CssClass="required"></asp:requiredfieldvalidator>

ボタン付き

<asp:button id="btnSendRequest" runat="server" Text="Submit" CausesValidation="True"></asp:button>

ローカルでトリガーされ、コードは実行されません。デプロイされたバージョンでは、バリデーターは起動せず、コードが実行されます。

シンプルなはずですが、長い間見つめていました。

人々に感謝します-Tariq

4

5 に答える 5

1

私も同じことを考えていました - asp_regiis は、サイトのルートに aspnet_client フォルダーを作成します。報告されている JavaScript エラーにも注意してください。診断に役立ちます。

于 2009-02-25T01:58:08.860 に答える
0

Fiddler: Fiddlerをインストールし、トラフィックを監視します。ページの読み込み中に404または500HTTPエラーが発生していませんか?おそらく、必要なクライアント側の検証ファイルを読み込もうとしていますが、問題が発生しています。

于 2009-02-26T07:01:33.253 に答える
0

違いは、ローカルテストではクライアント側のバリデーターがトリガーされ、サーバーではサーバー側のみがトリガーされることです。次のように、IsValidをメソッドに追加してください。

void MyClickHandler(object sender, EventArgs e)
{
   if( IsValid)
   {
      //rest of the code
   }
}
于 2009-02-25T17:41:36.483 に答える
0

これが .NET のバージョンに関連しているかどうかはわかりませんが、サーバーで aspnet_regiis -i を実行して、検証用のスクリプトをインストールする必要がある場合があります。何かをする前に、これを再確認してください:)

これがあなたを正しい方向に導くことを願っています。

http://msdn.microsoft.com/en-us/library/k6h9cz8h(VS.80).aspx

于 2009-02-25T01:54:28.120 に答える
0

このような状況では、ローカルで取得した未加工の HTML 出力とデプロイされたサーバーの出力を比較すると便利です。エリックが指摘したように、デプロイされたバージョンの検証 JavaScript が欠落している可能性がありますが、これで確実にわかります。

于 2009-02-25T07:38:21.880 に答える