Установка ширины и высоты модального окна от JavaScript / JQuery до встроенного кода ASP.NET MVC - PullRequest
0 голосов
/ 03 августа 2010

Это мой помощник HTML ActionLink в представлении:

<%=Html.ActionLink(Resources.Localize.Routes_WidgetsEdit, "Edit", Model.ContentType.ToString(), 
new {slug = Model.Slug, modal = true}, 
new { 
      rel = "shadowbox;height=_HEIGHT_;width=_WIDTH_", 
      title = Resources.Localize.Routes_WidgetsEdit, 
      @class = "editWidget" 
})%> 

Выдает этот HTML

<a href="/Tab/Edit/tab-slug/tabgroup-slug?modal=True" rel="shadowbox;height=_HEIGHT_;width=_WIDTH_" title="Edit tab">Edit tab</a>

Я хотел бы вставить динамические значения для ВЫСОТА и ШИРА , в JavaScript я получаю их так:

<script type="text/javascript">
var width = $(window).width();
var height = $(window).height();
</script>

Теперь мне нужен селектор или команда jQuery, чтобы выбрать атрибут rel для всех ссылок на странице, которые подключены к Shadowbox (см. Значение shadowbox в rel), и если они содержат shadowbox и HEIGHT и WIDTH заменяют эти два заполнителя фактическими значениями во время выполнения. Решение должно быть вполне пуленепробиваемым .

Надеюсь, это будет кусок пирога для всех вас, jqueryists там. ;)

1 Ответ

0 голосов
/ 03 августа 2010

Не знаю, насколько это пуленепробиваемо, но как насчет чего-то вроде следующего:

<html>
<head>

    <script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
    <script>
        $(document).ready(function(){
            $("a").each(function()
            {
                if($(this).attr("rel").length > 0)
                {
                    if($(this).attr("rel").indexOf("shadowbox;") >= 0)
                    {
                        $(this).attr("rel", "shadowbox;height=" + $(window).height() + ";width=" + $(window).width());
                    }
                }
            });
        });
    </script>
</head>

<body>

<a href="/Tab/Edit/tab-slug/tabgroup-slug?modal=True" rel="shadowbox;height=_HEIGHT_;width=_WIDTH_" title="Edit tab">Edit tab</a>

<!-- don't set this one -->
<a href="/Tab/Edit/tab-slug/tabgroup-slug?modal=True" title="Edit tab">Edit tab</a>

<a href="/Tab/Edit/tab-slug/tabgroup-slug?modal=True" rel="shadowbox;height=_HEIGHT_;width=_WIDTH_" title="Edit tab">Edit tab</a>

</body>

</html>
...