0

javascriptを使用してasp.netおよびajaxコントロールでWebフォームコントロールのプロパティを設定する方法について助けが必要です。

checkBox、TextBox、MaskedEditExtender、RegularExpressionValidator を含む ASP ページがあります。

MaskedEditExtender のマスクを Mask="(999)999-9999" として設定し、RegularExpressionValidator の ValidationExpression を ValidationExpression="\d{10}" として設定しました。

ユーザーが国際的なチェックボックスをチェックしたときにこれらの2つのプロパティを変更したい: Mask="999999999999" and as ValidationExpression="\d{12}" サーバー側で中断せずにJavaScriptを使用し、ユーザーがチェックを外したときに以前の値を取得するので、相互作用クライアント側のみにする必要があります。

これで私を助けてください、これが私のコードです:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <script type="text/javascript">

      function pageLoad() {
      }

    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:CheckBox ID="chkIntphoneHome" runat="server"  Text="Internation Code" 
                AutoPostBack="false"/>

            <asp:TextBox ID="txtHomePhone" runat="server"></asp:TextBox>


        <cc1:MaskedEditExtender ID="txtHomePhone_MaskedEditExtender" runat="server" 
            AutoComplete="False" CultureAMPMPlaceholder="" 
            CultureCurrencySymbolPlaceholder="" CultureDateFormat="" 
            CultureDatePlaceholder="" CultureDecimalPlaceholder="" 
            CultureThousandsPlaceholder="" CultureTimePlaceholder="" Enabled="True" 
            Mask="(999)999-9999" TargetControlID="txtHomePhone">
        </cc1:MaskedEditExtender>
        <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
            ErrorMessage="RegularExpressionValidator" ControlToValidate="txtHomePhone" 
            ValidationExpression="\d{10}"></asp:RegularExpressionValidator>        

    </div>
    </form>
</body>
</html>
4

1 に答える 1

0

maskEditor/validator コントロールのクライアント側の動作に干渉する代わりに、2 セットの textbox+maskExtender+validator を使用しても問題ありませんか?

セット 1 = texbox_HomePhone + maskEditExtender_HomePhone + regexValidator_HomePhone
セット 2 = texbox_IntHomePhone + maskEditExtender_IntHomePhone + regexValidator_IntHomePhone

チェックボックスを使用して、(javascript を介して) いずれかのセットの表示/非表示を切り替えます。

于 2010-02-08T07:51:46.957 に答える