1

2 つの異なる ajax updatepanels 内に 2 つのユーザー コントロールを含むページがあります。1 つのコントロールにはテキスト ボックスがあり、もう 1 つのコントロールにはボタンがあります。同じ検証グループを両方のユーザー コントロールのコントロールに設定しました。ボタンを押すと、クライアントの検証が開始されますが、検証が開始された後にポットバックが発生します。

次のように検証グループを設定しました。

 public string ValidationGroup
        {
            get
            {
                return txtFirstName.ValidationGroup;
            }
            set
            {
                txtFirstName.ValidationGroup = value;
                txtLastName.ValidationGroup = value;
                txtPhoneNumber.ValidationGroup = value;
                txtEmail.ValidationGroup = value;
                txtFaxNumber.ValidationGroup = value;
                txtCompany.ValidationGroup = value;
                txtAddress1.ValidationGroup = value;
                txtAddress2.ValidationGroup = value;
                txtCity.ValidationGroup = value;
                txtZipPostalCode.ValidationGroup = value;
            }
        }

and here is how first control is user with validation group set to that property:

 <nopCommerce:AddressEdit ID="ctrlBillingAddress" runat="server" IsNew="true" IsBillingAddress="true"
                        ValidationGroup="CheckoutConfirm" />

and here is how the control with button looks like:

 <nopCommerce:CheckoutConfirm ID="ctrlCheckoutConfirm" runat="server" OnePageCheckout="true"
                                        OnCheckoutStepChanged="ctrlCheckoutConfirm_CheckoutStepChanged" />

where as markup for the button is like this:

 <asp:LinkButton runat="server" ID="btnNextStep" 
                    OnClick="btnNextStep_Click" ValidationGroup="CheckoutConfirm" CausesValidation="true"><img src="App_Themes/darkOrange/images/btnPlaceOrder.png" alt="Place Order" /></asp:LinkButton>

ポストバックなしでクライアント検証を行う方法を提案してください。

4

2 に答える 2

1

この書き込みには JavaScript を使用できます。

function check(){
if (Page_ClientValidate('validationgroup')) {
            return true;
        }
        else {

            return false;
        }
}

また、一部の行にバグがある可能性があるため、chrome で完全なコードをデバッグしてみてください。

于 2012-07-02T10:01:19.523 に答える
0

更新パネルの updatemode は何に設定されていますか?

asp.net フォーラムのこの投稿を参照してください。これはあなたを助けるかもしれません。

于 2012-07-02T08:34:14.100 に答える