我已经成功地进行了JQuery的工作,母版页,但在母版页不JQuery的UI.My头看起来是这样的:JQuery用户界面不能与母版页的工作
<head runat="server">
<title>Analytics</title>
<link href="~/css/PageElements.css" rel="stylesheet" type="text/css" runat="server"/>
<link href="~/css/FormElements.css" rel="stylesheet" type="text/css" runat="server"/>
<link href="~/css/Buttons.css" rel="stylesheet" type="text/css" runat="server"/>
<link href="<%# ResolveUrl("~/css/smoothness/jquery-ui-1.8.9.custom.css") %>" rel="Stylesheet" type="text/css" />
<script type="text/javascript" src="<%# ResolveUrl("~/Scripts/jquery-1.4.4.min.js") %>" />
<script type="text/javascript" src="<%# ResolveUrl("~/Scripts/jquery-ui-1.8.9.custom.min.js") %>" />
<script type="text/javascript">
jQuery.noConflict(); <%--This should avoid conflicts Ajax Control Toolkit--%>
</script>
<asp:ContentPlaceHolder ID="HeaderPlaceHolder" runat="server" />
</head>
而在内容页中,我按照JQuery UI演示页面创建了一个非常简单的脚本来加载Date Picker。我总是得到'Microsoft JScript运行时错误:对象不支持这个属性或方法'。这是我的内容页面:
<asp:Content ID="MainContent" ContentPlaceHolderID="MainPlaceHolder" runat="server">
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#<%=btnSubmit.ClientID %>').click(function() {
alert("Hello world!");
});
});
</script>
<script type="text/javascript">
jQuery(function() {
jQuery('#<%=datepicker.ClientID %>').datepicker();
});
</script>
<div class="demo">
<p>Date: <asp:TextBox runat="server" ID="datepicker" /></p>
</div>
<asp:Button ID="btnSubmit" runat="server" Text="Submit" />
</asp:Content>
CSS文件夹就位,纯JQuery调用工作。这个简单的日期选择器不适用于这个主页面/内容设置。我已经尝试了很多datepicker ID的组合,使用ClientID(原样),UniqueID,[id $ = datepicker]等。
有人可以点亮这个吗?我错过了什么?
我不知道,但有两个建议:(1)为什么使用ResolveUrl的jQuery相关的CSS和JS,但使用静态字符串的其他人?为什么不为jQuery相关资源使用静态字符串呢?确保将jquery资源放在物理路径中。 (2)如果您想要诊断,请在加载浏览器后执行“查看源代码”,您可以看到“ResolveUrl”正在解决的问题。这可能会给你提示你需要什么路径。 – Cheeso 2011-02-08 21:39:49
不知道这是否真的会有太多的帮助...但你可以使用id之外的其他东西来对准jQuery。如果您将其设置为“datepicker”类,则不必与ClientID进行争夺。相反,使用$(。datepicker).datepicker(); – guildsbounty 2011-02-08 21:40:18