试图在mvc4中加载jquery加载gif

时间:2012-07-17 15:26:51

标签: jquery asp.net-mvc-3 gif

我无法让mvc4识别出图像位置......

这是我正在使用的代码......

var $loading = $('<img src="Url.Content("~/Images/ajax-loader.gif")" alt="loading" class="ui-loading-icon">');

放入@符号无济于事......只会让事情变得更糟。然后我在函数中调用它......

$dialog
    .append($loading)
    .load($url)
    .dialog({
          autoOpen: false
        , title: $title
         , width: 1200
        , modal: true
       , minHeight: 350
         , show: 'fade'
         , hide: 'fade'
     });

在MVC2中,我只是简单地将Url.Content()标记在<%= %>内,而且事情本来就很酷

这是整个功能......

function loadDialog(tag, event, target) {
            //debugger;
            event.preventDefault();
            var $loading = $('<img src="@(Url.Content("~/Images/ajax-loader.gif"))" alt="loading" class="ui-loading-icon">');
            debugger;
            var $url = $(tag).attr('href');
            var $title = $(tag).attr('title');
            var $dialog = $('<div></div>');
            $dialog.empty();
            $dialog
            .append($loading)
            .load($url)
            .dialog({
                autoOpen: false
                   , title: $title
                   , width: 1200
                   , modal: true
                   , minHeight: 350
                   , show: 'fade'
                   , hide: 'fade'
            });

            $dialog.dialog('open');
        };

3 个答案:

答案 0 :(得分:1)

必须使用@

var loading = '<img src="@Url.Content("~/Images/ajax-loader.gif")" alt="loading" class="ui-loading-icon">';

答案 1 :(得分:1)

您应该使用@并使用单引号代替“

var $loading = $("<img src='"+@Url.Content("~/Images/ajax-loader.gif")+"' alt='loading' class='ui-loading-icon'>");

更新:

或试试这个:

var $loading = $('<img src="@(Url.Content("~/Images/ajax-loader.gif"))" alt="loading" class="ui-loading-icon">');

你应该注意到这在.js文件中不起作用

答案 2 :(得分:0)

以下似乎适用于Razor ......

var $loading = $('<img src="../../Images/ajax-loader.gif" alt="loading" class="ui-loading-icon">');

我只是假设将网站从我的开发人员框移动到实际服务器时这不起作用。好吧,我即将发现。