2011-02-08 26 views
1

我已经成功地进行了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]等。

有人可以点亮这个吗?我错过了什么?

+0

我不知道,但有两个建议:(1)为什么使用ResolveUrl的jQuery相关的CSS和JS,但使用静态字符串的其他人?为什么不为jQuery相关资源使用静态字符串呢?确保将jquery资源放在物理路径中。 (2)如果您想要诊断,请在加载浏览器后执行“查看源代码”,您可以看到“ResolveUrl”正在解决的问题。这可能会给你提示你需要什么路径。 – Cheeso 2011-02-08 21:39:49

+0

不知道这是否真的会有太多的帮助...但你可以使用id之外的其他东西来对准jQuery。如果您将其设置为“datepicker”类,则不必与ClientID进行争夺。相反,使用$(。datepicker).datepicker(); – guildsbounty 2011-02-08 21:40:18

回答

0

我发现为了避开这个问题是只需在内容页添加脚本参考的唯一方法。我尝试在预渲染过程中添加jqueryui,就像我添加jquery一样。它只是不会工作。

相关问题