蒙面输入插件不工作 [英] Masked Input Plugin not working
问题描述
编辑:我发现这固定我的问题在这个环节的答案
<一href=\"http://stackoverflow.com/questions/18915853/how-to-make-jquery-masked-input-plugin-working-after-asyncpostback-in-asp-net-aj\">How使JQuery的蒙面输入在asp.net阿贾克斯更新潘内尔AsyncPostback后插件的工作?
我使用这个插件
http://digitalbush.com/projects/masked-input-plugin/
我的参考:
&LT;脚本的src ='&LT;%#RESOLVEURL(〜/脚本/ jQuery的-maskedInput-1.3.1.js)%&GT;'类型=文/ JavaScript的&GT;&LT; / SCRIPT&GT;
我有我的功能脚本
$(函数(){
$('&LT;%= txtPhoneNum.ClientID%GT;')掩码((999)999-9999);
});
和一个窗格中/我的UpdatePanel TextBox控件/的ContentTemplate
&LT; ASP:面板ID =PanelAddPhoneNumber=服务器风格=显示:无;最小宽度:500像素;最小高度:500像素;标题=添加电话号码&GT;
&LT; ASP:的UpdatePanel ID =UpdatePanelAddPhoneNums=服务器的UpdateMode =始终&GT;
&LT;&的ContentTemplate GT; &LT;表&gt;
&所述; TR&GT;
&所述; TD&GT;
&LT; ASP:标签ID =Label21=服务器文本=手机类型:/&GT;
&LT; / TD&GT;
&所述; TD&GT;
&LT; ASP:DropDownList的=服务器ID =dropDownListPhoneType/&GT;
&LT; / TD&GT;
&LT; / TR&GT;
&所述; TR&GT;
&所述; TD&GT;
&LT; ASP:标签ID =Label28=服务器文本=电话号码:/&GT;
&LT; / TD&GT;
&所述; TD&GT;
&LT; ASP:文本框=服务器ID =txtPhoneNum类型=文本的AutoPostBack =真WIDTH =300/&GT;
&LT; / TD&GT;
&LT; / TR&GT;
&LT; /表&gt;
&LT; DIV的风格=文本对齐:中心;&GT;
&LT; BR /&GT;
&LT; BR /&GT;
&LT; BR /&GT;
&LT; ASP:按钮的ID =btnAddPhoneNum=服务器的OnClientClick =ButtonCancelClient();的OnClick =btnAddPhoneNum_Click文本=添加/&GT;
&LT; ASP:按钮的ID =btnCancelPhoneNum=服务器的OnClientClick =ButtonCancelClient();的OnClick =btnCancelPhoneNum_Click文本=取消/&GT;
&LT; ASP:按钮的ID =btnDeletePhoneNum=服务器的OnClick =btnDeletePhoneNum_Click文本=删除可见=假的OnClientClick =检查(); /&GT;
&LT; / DIV&GT;
&LT; /&的ContentTemplate GT;
&LT;&触发器GT;
&LT; ASP:AsyncPostBackTrigger控件ID =btnAddPhoneNum事件名称=点击/&GT;
&LT; ASP:AsyncPostBackTrigger控件ID =btnCancelPhoneNum事件名称=点击/&GT;
&LT; /触发器&GT;
&LT; / ASP:的UpdatePanel&GT;
&LT; / ASP:面板&gt;
但是当我点击我txtPhone控制,没有面具或任何..它什么都不做。
我试图在功能从txtPhone.ClientID只是txtPhone心不是改变了我的名字,我想这可能是参考,但自从我使用像其他5引用到同一个文件夹中的.js文件和他们的工作,我参考的拼写是正确的,但我真的不知道为什么这个心不是工作。
这些是在项目中所使用的所有的.js
F
相对=样式
类型=文/ CSS=服务器/>
相对=样式
类型=文/ CSS=服务器/>
相对=样式
类型=文/ CSS=服务器/>
类型=文/ JavaScript的>
类型=文/ JavaScript的>
类型=文/ JavaScript的>
类型=文/ JavaScript的>
&LT;脚本的src ='&LT;%#RESOLVEURL(〜/脚本/ jQuery的-UI-1.10.1.custom.min.js)%&GT;'类型=文/ JavaScript的&GT;&LT; / SCRIPT&GT; &LT;脚本的src ='&LT;%#RESOLVEURL(〜/脚本/ jQuery的-maskedInput-1.3.1.js)%&GT;'类型=文/ JavaScript的&GT;&LT; / SCRIPT&GT;
请确保您加载的jQuery核心库和UI库:
这些库必须先加载(这只是一个例子,使用任何版本,preFER但你需要的jQuery加载)
&LT;脚本的src =// code.jquery.com / jQuery的-1.9.1.js&GT;&LT; / SCRIPT&GT;
&LT;脚本的src =// code.jquery.com / UI / 1.10.4 / jQuery的-ui.js&GT;&LT; / SCRIPT&GT;
这是不正确的:
$(函数(){
$('&LT;%= txtPhoneNum.ClientID%GT;')掩码((999)999-9999);
});
您需要用#中使用,需要prefex的elementId:
$(文件)。就绪(函数(){
$('#&LT;%= txtPhoneNum.ClientID%GT;')掩码((999)999-9999);
});
确保您加载的jQuery库不只是MASKED插件我没有看到你这样做。
EDIT: I found the the answer which fixed my issue at this link How to make JQuery masked-input plugin working after AsyncPostback in asp.net Ajax Update pannel?
I am using this plugin http://digitalbush.com/projects/masked-input-plugin/
My reference:
<script src='<%# ResolveUrl("~/Scripts/jquery-maskedInput-1.3.1.js")%>' type="text/javascript"></script>
I have my function in a script
$(function () {
$('<%= txtPhoneNum.ClientID %>').mask("(999) 999-9999");
});
and my textbox control in a pane/updatepanel/contentTemplate
<asp:Panel ID="PanelAddPhoneNumber" runat="server" Style="display: none; min-width: 500px; min-height: 500px;" Title="Add Phone Numbers">
<asp:UpdatePanel ID="UpdatePanelAddPhoneNums" runat="server" UpdateMode="Always">
<ContentTemplate>
<table>
<tr>
<td>
<asp:Label ID="Label21" runat="server" Text="Phone Type:" />
</td>
<td>
<asp:DropDownList runat="server" ID="dropDownListPhoneType" />
</td>
</tr>
<tr>
<td>
<asp:Label ID="Label28" runat="server" Text="Phone Number:" />
</td>
<td>
<asp:TextBox runat="server" ID="txtPhoneNum" type="text" AutoPostBack="true" Width="300" />
</td>
</tr>
</table>
<div style="text-align: center;">
<br />
<br />
<br />
<asp:Button ID="btnAddPhoneNum" runat="server" OnClientClick="ButtonCancelClient();" OnClick="btnAddPhoneNum_Click" Text="Add" />
<asp:Button ID="btnCancelPhoneNum" runat="server" OnClientClick="ButtonCancelClient();" OnClick="btnCancelPhoneNum_Click" Text="Cancel" />
<asp:Button ID="btnDeletePhoneNum" runat="server" OnClick="btnDeletePhoneNum_Click" Text="Delete" Visible="false" OnClientClick="check();" />
</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAddPhoneNum" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="btnCancelPhoneNum" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</asp:Panel>
but when I click on my txtPhone control, there is no mask or anything.. it does nothing.
I tried changing my name in the function from txtPhone.ClientID to just txtPhone, i thought it might be the reference but it isnt since I am using like 5 other references to .js files within the same folder and they are working, and my reference is spelt correct, but I really have no idea why this isnt working.
these are all the .js being used in the project f ' rel="stylesheet" type="text/css" runat="server" /> ' rel="stylesheet" type="text/css" runat="server" /> ' rel="stylesheet" type="text/css" runat="server" /> ' type="text/javascript"> ' type="text/javascript"> ' type="text/javascript"> ' type="text/javascript">
<script src='<%# ResolveUrl("~/Scripts/jquery-ui-1.10.1.custom.min.js")%>' type="text/javascript"></script>
<script src='<%# ResolveUrl("~/Scripts/jquery-maskedInput-1.3.1.js")%>' type="text/javascript"></script>
Make sure you are loading the CORE jQuery library and UI library:
These libraries must be loaded first: (these are just an example, use whatever version you prefer but you need jQuery loaded)
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
this is not correct:
$(function () {
$('<%= txtPhoneNum.ClientID %>').mask("(999) 999-9999");
});
You need to use and need to prefex the elementId with a #:
$( document ).ready(function() {
$('#<%= txtPhoneNum.ClientID %>').mask("(999) 999-9999");
});
Make sure you are loading the jquery library NOT JUST THE MASKED plugin I don't see you doing that.
这篇关于蒙面输入插件不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!