我有一個JQuery日期掩碼,但是當我運行頁面時,它會引發錯誤「Microsoft JScript運行時錯誤:對象不支持此屬性或方法」。JQuery插件不工作
現在,這個特定的JQuery意圖工作的控件被動態添加到中繼器控件中。通過這個,我查看了控件的id,它在Visual Studio中的停頓和停止以及aspx頁面上顯示的內容。除了JQuery在開始時所使用的「#」之外,ID是相同的,這不在頁面上。
在我的jQuery代碼我有:
JQuery(function ($) {
$('#<%=date.ClientID %>').mask("99/99/9999");
});
有沒有去告訴JQuery的不包括「#」找到控制什麼時候?我使用了UniqueID,但是這會將任何下劃線更改爲「$」,這與頁面上的內容不同。我唯一的問題是在ID開始時用「#」號。我甚至添加了一個警告框來檢查文本框是否存在,並且它返回爲空。我曾嘗試在文本框中添加CssClass屬性,但也是通過相同的錯誤。
請注意具有文本框的自定義用戶控件將以編程方式添加到中繼器。下面
代碼:
用戶控制與轉發
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Step4.ascx.cs"
Inherits="Prototype.Step4" %>
<div style="height: 800px; margin-top: 20px; overflow-x: hidden; overflow-y: scroll">
<p>
<b>Edit Stage</b></p>
<asp:Repeater ID="Edit" runat="server">
<HeaderTemplate>
<table>
</HeaderTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label ID="RowLabel" runat="server" Text="Label" ></asp:Label>
</td>
<td>
<asp:PlaceHolder ID="ControlPlaceHolder" runat="server"></asp:PlaceHolder>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</div>
屏蔽控制動態添加到上述
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MaskControl.ascx.cs" Inherits="Prototype.CommonControls.MaskControl" %>
<asp:TextBox ID="date" runat="server" Width="136px" CssClass="dateMask"></asp:TextBox>
<script src="../../Scripts/jquery-1.4.2.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.maskedinput.js" type="text/javascript"></script>
<script type="text/javascript">
// jQuery(function ($) {
// $('.dateMask').mask("99/99/9999");
// });
alert(document.getElementById("MaskedDateBox"));
</script>
控制誰能幫助?
你試圖封閉CDATA之間你的腳本? – Codex73 2010-12-04 14:32:24