powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Razor: динамический идентификатор в скрипте
25 сообщений из 68, страница 2 из 3
Razor: динамический идентификатор в скрипте
    #38634409
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это как? ты же сам задаешь конечное кол-во renderpartial в коде parent view
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634413
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет, есть еще подгрузка блоков аяксом, то есть количество зависит от действий пользователя на странице.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634418
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. ты грузишь партиал вью скриптом на основной странице? зачем?
что за задача такая, может можно это реализовать другим способом?
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634422
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProИспользую такую конструкцию в RAZOR-е:

Код: javascript
1.
2.
3.
4.
5.
<script type="text/javascript">
  var @Model.QID = {
  .....
  }
</script>




Компиляция проходит, но есть подчеркивание ошибки и варнинг: Expected identifier

То есть некритично, но не хочется Error List забивать подобными варнингами.
Есть мысли, как он него избавиться?

var obj = {};

var id = 'var @Model.QID';

obj[id] = bla..bla..bla;
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634429
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

динамическое название локальной переменной var, это ж сколько вёдер ацетона надо выпить, чтоб прийти к такому желанию.

не поделитесь причинами такого желания? очень интересно ))))
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634431
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttShocker.Pro,

динамическое название локальной переменной var, это ж сколько вёдер ацетона надо выпить, чтоб прийти к такому желанию.

не поделитесь причинами такого желания? очень интересно ))))

+1
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634433
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneт.е. ты грузишь партиал вью скриптом на основной странице? зачем?
что за задача такая, может можно это реализовать другим способом?Совершенно классическая задача для аякс-приложения. Пользователь клацнул кнопку - ему подгрузилась формочка или что-то еще без перезагрузки страницы.


hVosttvar obj = {};
var id = 'var @Model.QID';
obj[id] = bla..bla..bla;
Хм, вариант. То есть obj надо определить на уровне мастер-страницы?
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634434
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProГде-то в степиЕсли надоедает и действия законны, может стоит покопаться в студии или в проекте в свойствах понизить warning levelок, но таки другие-то варнинги хочется видеть )
запустишь анализ кода ( как отче наш) и увидишь)
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634437
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttне поделитесь причинами такого желания? очень интересно ))))я же уже вторую страницу топика делюсь, разве что-то неясно? )

Другой вопрос, что вместо динамического идентификатора логичнее, видимо, использовать индекс в объекте страницы, как ты и предложил.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634440
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProСовершенно классическая задача для аякс-приложения. Пользователь клацнул кнопку - ему подгрузилась формочка или что-то еще без перезагрузки страницы.



ну так из этого никак не вытекает код , который ты привёл в самом начале
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634447
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
можно сделать вот таким макаром
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
......
  dataType: "json",
  success: function (obj) {  
           $('#myDiv').empty();  
            $('#myDiv').append(obj.myhtml);
            eval(obj.jscode);//страшно ))
},
......
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634451
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneну так из этого никак не вытекает код , который ты привёл в самом началечастичному представлению нужен уникальный, принадлежащий именно ему объект.
я пытался создавать его в глобальном адресном пространстве, в этом я и не прав - собственно, hVostt уже и предложил более грамотное решение, которое и от варнинга избавляет и в целом логичнее
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634455
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proдинамического идентификатора логичнее, видимо, использовать индекс в объекте страницы

это по сути одно и тоже.

obj['hey2'] = 2;

alert(obj.hey2);
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634456
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиможно сделать вот таким макаромтоже идея... но хочется сильнее отделить данные от DOM
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634458
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proчастичному представлению нужен уникальный, принадлежащий именно ему объект.

ну выполни метод AjaxPost в контроллере который вернет это с нужным html в зависимости от входящего параметра
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634462
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиможно сделать вот таким макаром

jsonp никто не отменял. вопрос только, нужно ли в данном случае оно.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634469
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proтоже идея... но хочется сильнее отделить данные от DOM

а я обычно стараюсь поступать наоборот. по возможности использовать data-атрибуты для хранения данных по-ближе к элементам, где они используются. в таком случае не приходится городить огород из управление данными в скриптах. всё просто, вот элемент, и вот его данные.

кстати, в data-атрибуты можно с помощью скрипта загонять что угодно. ссылки на объекты и массивы? ок))

такая техника используется повсеместно при разработке плагинов и компонентов jQuery.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634470
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так у меня так это происходит... или я опять не понял, что ты хотел сказать

так или иначе, частичное представление может оказаться на странице двумя способами - с помощью Html.RenderPartial и с помощью аякса, при этом самому частичному представлению все равно, каким способом захотят его отобразить.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634477
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proтак или иначе, частичное представление может оказаться на странице двумя способами - с помощью Html.RenderPartial и с помощью аякса, при этом самому частичному представлению все равно, каким способом захотят его отобразить.

ну дык.

<div data-partial="@Url.Action("Action", "Controller")"></div>

...

$('[data-partial]').each(function() {

var self = $(this);
self.load(self.data('partial'));

});

скрипт один, а дивов с партиалами сколько угодно. таким макаром мне не надо генерить скрипт с помощью Razor, я могу вынести его в отдельный JS файл, и надо стремиться к этому.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634483
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttа я обычно стараюсь поступать наоборот. по возможности использовать data-атрибуты для хранения данных по-ближе к элементам, где они используются. в таком случае не приходится городить огород из управление данными в скриптах. всё просто, вот элемент, и вот его данные.

кстати, в data-атрибуты можно с помощью скрипта загонять что угодно. ссылки на объекты и массивы? ок))

такая техника используется повсеместно при разработке плагинов и компонентов jQuery.не вижу в своем случае принципиальной разницы. А вот лишние телодвижения при доступе к данным тут будут. Одно дело просто обратиться к данным объекта (зная его идентификатор), другое дело искать нужный элемент в DOM, извлекать из него данные и только потом к ним обращаться.


hVosttvar id = 'var @Model.QID';
obj[id] = bla..bla..bla;тут еще такой вопрос возникает, в моем варианте (с глобальным динамическим идентификатором) объект сразу оказывается в зоне видимости window[]. В твоем варианте нужно при загрузке частичного представления еще выполнить принудительное присваивание... или я что-то не понимаю?
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634492
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

приколи как делаются модальные окошки:

<a href="@Url.Action("SomePartial", "SomeController")" data-action="form" data-title="Заголовок формы">нажмешь, получишь окошко с динамически заргруженным Partial</a>


..

$(document).on('click', '[data-action="form"], function(e) {
e.preventDefault();
var self=$(this);
$.get(self.prop('href'), function(data){
var content = $(data);
content.modal('show', {
title: self.data('title');
});
});
});

данные отдельно, код отдельно. не должен код скрипта генерироваться, только уж в крайних случаях.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634502
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proне вижу в своем случае принципиальной разницы

разница есть. я теперь могу ДЕКЛАРАТИВНО указать, где размещаться партиалу. не через скрипт. скрипт найдёт элемент, и загрузит в него контент (партиал).

это очень принципиальная разница. на этой разнице весь Angular JS построен (хотя они там перестарались).

Shocker.ProОдно дело просто обратиться к данным объекта (зная его идентификатор), другое дело искать нужный элемент в DOM, извлекать из него данные и только потом к ним обращаться.

хз, я почитал тему и так и не понял, зачем это возня с идентификатором. я вообще стараюсь не иметь с ними дело. у меня есть элемент, есть ЕГО данные. зачем мне в данном случае какие-то идентификаторы?

или это у вас общие данные, и кто-то с ними должен работать? я просто не понял чего надо.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634504
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttскрипт один, а дивов с партиалами сколько угодно. таким макаром мне не надо генерить скрипт с помощью Razor, я могу вынести его в отдельный JS файл, и надо стремиться к этому.с одной стороны правильно, с другой - есть некая оборотная сторона медали: мастер страница не знает, какие скрипты могут понадобиться частичным представлениям. Грузить ВСЕ скрипты сразу - нерационально. Придется делать какое-то управление библиотекой подгруженный мелких скриптов, нужных для частичных представлений, проверки, что определенные скрипты уже подгружены и т.п. Если скрипт, нужный для частичного представления, небольшой (а о больших сейчас речь не идет), его проще и удобнее держать "под рукой" в частичном представлении и возвращать вместе с ним.
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634505
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

и ещё, я могу один раз написать скрипт, и использовать его на множестве страницах. даже если такого требования нет, лучше считать по умолчанию, что оно есть. так код получается чище.

и вообще, генерировать СКРИПТЫ с помощью разметки HTML, это моветон, не находите?
...
Рейтинг: 0 / 0
Razor: динамический идентификатор в скрипте
    #38634508
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttили это у вас общие данные, и кто-то с ними должен работать?да, это данные и методы, принадлежащие экземпляру частичного представления, к ним в том числе обращаются извне
...
Рейтинг: 0 / 0
25 сообщений из 68, страница 2 из 3
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Razor: динамический идентификатор в скрипте
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]