无法在jqgrid上看到图像/图标

时间:2013-10-15 11:23:45

标签: css asp.net-mvc image jqgrid

我在我的Asp.net MVC Web应用程序中使用JqGrid。

我已根据普通MVC应用程序的目录结构将所有java脚本文件放在Scripts文件夹下,将所有css和图像放在Content文件夹中。

但是,问题在于我无法在网格上看到图像。 CSS工作正常,但分页,排序的图标不可见。

任何人都可以帮我了解文件的放置方式,以便每件事情都能完美运作..

代码:

<link href="../../Content/css/ui.jqgrid.css" rel="stylesheet" type="text/css" />
    <link href="../../Content/css/jquery-ui.css" rel="stylesheet" type="text/css" />
    <link href="../../Content/css/jquery.ui.theme.css" rel="stylesheet" type="text/css" />
    <script src="../../Scripts/jquery-1.9.0.min.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery.jqGrid.min.js" type="text/javascript"></script>
    <script src="../../Scripts/grid.locale-en.js" type="text/javascript"></script>

1 个答案:

答案 0 :(得分:1)

我认为你以错误的方式将jQuery UI添加到项目中。您应该验证是否在images文件夹中复制了jQuery UI Theme的Content\css子文件夹。如果您打开jquery-ui.css并搜索url(文字,您会看到jquery-ui.css使用相对路径来处理图片(例如url(images/ui-bg_inset-hard_100_fcfdfd_1x100.png))。因此,您必须拥有images文件夹,其中包含所使用主题的所有jQuery UI图像。

如果您使用同一主题中的jquery.ui.theme.css,则不需要包含jquery-ui.css。在我看来,使用旧的jquery-1.9.0.min.js也不是最好的选择。而不是你可以使用jQuery 2.0.3(或1.10.3,如果你需要支持IE 6-8)或至少jQuery 1.9.2。

我个人更喜欢使用NuGet将公共包添加到Visual Studio项目中。您只需在Visual Studio的解决方案资源管理器中打开Project的上下文菜单,然后选择“Manage NuGet Packages ..”。然后,您可以在线搜索公共软件包,例如jQueryjQuery.UI.CombinedjQuery.UI.Theme.RedmondTrirand.jqGrid等。 NuGet会将所有文件安装在项目的相应文件夹中。文件夹位置由软件包的开发人员选择。即使您手动安装某些文件,我也建议您使用所有文件的相同位置,例如NuGet包使用的位置。