在两个不同的浏览器中的日期选择器

问题描述:

我正在使用部分视图在asp.net mvc上工作。我得到了一个问题,即日期选择器在IE上正常工作,但它不适用于Mozilla Firefox。在我用的是:在两个不同的浏览器中的日期选择器

<link href="<%=ResolveClientUrl("~/Scripts/Themes/ui-lightness/jquery-ui-1.7.2.custom.css")%>" rel="stylesheet" type="text/css" /> 
<script src="../Scripts/jquery-1.3.2.js" type="text/javascript"></script> 

<script src="../Scripts/ui.core.js" type="text/javascript"></script> 

<script src="../Scripts/ui.datepicker.js" type="text/javascript"></script> 

和视图页上的功能是:

  <script type="text/javascript"> 

         $(document).ready(function() { 
          $("#txtTransationDate").datepicker(); 
         }); 
         </script> 

         <input id="txtTransationDate" name="txtTransationDate" type="text" /> 

请咨询我吧。预先感谢。

+1

你能对这个问题解释一下?你在Firefox中收到错误吗?这是显示问题吗?请告诉我们更多!!! – 2010-06-10 13:53:53

+0

没有错误控制台是明确的 – Renu123 2010-06-10 14:04:52

+0

你有它托管某处给我们看? – 2010-06-10 15:45:13

下面的代码每次在每个浏览器中都有效。

<html> 
<head> 
<title>test</title> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js" type="text/javascript"></script> 
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.0/themes/ui-lightness/jquery-ui.css" type="text/css" 

rel="stylesheet"> 
<style> 
input { width:300px; } 
</style> 
</head> 
<body> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#txtTransationDate").datepicker(); 
    }); 
</script> 
<h2>Date Picker Test</h2> 
<input id="txtTransationDate" name="txtTransationDate" type="text" value="Click here to show the date picker!" /> 
</body> 
</html> 

因此,让我们来看看你的代码和这个代码之间的区别。

  • 首先,我使用的是谷歌CDN 我的JS和CSS文件,这 确保我在 测试我的文件是投注 加载的情况下。这也使得它更容易 测试;)

  • 我也使用jQuery 1.4.2(最新 版)和1.8.2最新的jQuery UI的 版本。

  • 问题是您正在使用哪个版本的 jQuery?并为每个浏览器兼容的jQuery UI和jQuery版本 ?

  • 你的CSS 1.7.x版,这往往 建议 你拿起jQuery UI的版本也可能比jQuery的版本更新 。

  • 我使用的是完全相同的JavaScript 和相同的输入标签(加入 属性为这个 测试的目的)。

  • 看来很明显,问题 不驻留在您在这里提供的js和html 。

  • 我也向你展示了我的整个 上下文。 Firefox是挑剔的,IE也是 ,但不是相同的东西。那么 有可能是其他js或 畸形标签干扰FF?

尝试在静态HTM页面中运行我的测试。如果它起作用,那么我会尝试的第一件事就是改变我正在使用的脚本。

另一方面,如果您不想或不能在您的最终应用中使用Google CDN。我建议使用这些辅助方法来包含css和js文件。因为很难预见MVC应用程序可能具有的所有可能的url级别(/)。

/// <summary> 
/// Include a javascript file. 
/// </summary> 
/// <param name="path"></param> 
/// <param name="url"></param> 
/// <returns></returns> 
public static string IncludeJavascript(this UrlHelper url, string path) 
{ 
    return "<script src=\"" + url.Content(path) + "\" type=\"text/javascript\"></script>"; 
} 

/// <summary> 
/// Include a css file. 
/// </summary> 
/// <param name="path"></param> 
/// <param name="url"></param> 
/// <returns></returns> 
public static string IncludeStylesheet(this UrlHelper url, string path) 
{ 
    return "<link href=" + url.Content(path) + " rel=\"stylesheet\" type=\"text/css\" />"; 
} 

用法:

<%= Url.IncludeJavascript("~/Scripts/jquery.js") %> 
<%= Url.IncludeStylesheet("~/Scripts/Themes/jquery.css") %>