我需要帮助才能在更新面板中使用Java脚本。
我在Web内容表单的更新面板中有复选框,带有MaskedEditExtender的文本框。
我想在不使用Java脚本对更新面板进行回溯的情况下选中此复选框时更改MaskedEditExtender的掩码,所以任何人都可以帮助我。
这是我的代码:
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<script src="~/js/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/javascript">
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<p style="height: 1480px; width: 953px">
<asp:UpdatePanel ID="UPanelContacts" runat="server">
<ContentTemplate>
<asp:Panel ID="PContactsInfo" runat="server" GroupingText="Personal Information"
BorderStyle="Dotted" Style="position: absolute; top: 103px; left: 221px; height: 468px;
width: 811px; margin-top: 69px;">
<asp:TextBox ID="txtMobileHome" runat="server" Style="top: 226px; left: 550px; position: absolute;
height: 22px; width: 128px"></asp:TextBox>
<cc1:MaskedEditExtender ID="txtMobileHome_MaskedEditExtender" runat="server" CultureAMPMPlaceholder=""
CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder=""
CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""
Enabled="True" TargetControlID="txtMobileHome" Mask="(999)999-9999">
</cc1:MaskedEditExtender>
<asp:RegularExpressionValidator ID="REV_HomeMobile" runat="server" ErrorMessage="Please enter valid Mobile Number "
ControlToValidate="txtMobileHome" ValidationExpression="\d{3}\d{3}\d{4}" Style="position: absolute;
top: 248px; left: 501px; margin-bottom: 0px; height: 21px;">
</asp:RegularExpressionValidator>
<asp:CheckBox ID="chkIntphoneHome" runat="server" Text="Internation Code" Style="position: absolute;
top: 113px; left: 549px;"
oncheckedchanged="chkIntphoneHome_CheckedChanged" AutoPostBack="True"
/>
<asp:AsyncPostBackTrigger ControlID="chkIntMobileHome"
EventName="CheckedChanged" />
</Triggers>
</asp:UpdatePanel>
</p>
</asp:Content>
最佳答案
<asp:CheckBox ID="chkIntphoneHome" runat="server" Text="Internation Code" Style="position: absolute;
top: 113px; left: 549px;"
oncheckedchanged="chkIntphoneHome_CheckedChanged" onAutoPostBack="True" onchange="javascript:CallMe()"
/>
<script>
function CallMe() {
if (document.getElementById('CheckBox1').checked) {
$find("txtMobileHome_MaskedEditExtender").set_Mask("99.9");
$find("txtMobileHome_MaskedEditExtender")._convertMask();
//for checking that mask value has been changed or not
alert($find("txtMobileHome_MaskedEditExtender").get_Mask());
}
else {
$find("txtMobileHome_MaskedEditExtender").set_Mask("99.9999");
$find("txtMobileHome_MaskedEditExtender")._convertMask();
//for checking that mask value has been changed or not
alert($find("txtMobileHome_MaskedEditExtender").get_Mask());
}
}
</script>
或像这样
<asp:CheckBox ID="chkIntphoneHome" runat="server" Text="Internation Code" Style="position: absolute;
top: 113px; left: 549px;"
oncheckedchanged="chkIntphoneHome_CheckedChanged" onAutoPostBack="True" onchange="javascript:CallMe()"
/>
<script>
function CallMe() {
if (document.getElementById('CheckBox1').checked) {
$find("MaskedEditExtender1")._MaskConv = "99.9";
//for checking that mask value has been changed or not
alert($find("txtMobileHome_MaskedEditExtender").get_Mask());
}
else {
$find("MaskedEditExtender1")._MaskConv = "99.9999";
//for checking that mask value has been changed or not
alert($find("txtMobileHome_MaskedEditExtender").get_Mask());
}
}