Вызов функции JavaScript из ASP.NET Razor

1

Я пишу код Razor в представлении и вам нужно вызвать функцию JavaScript с JSON, которая отображается кодом Razor:

// JavaScript function
function buildTemplate(currentTemplate) {
    alert('hello world');
}

@* Build out entire Template structure in JavaScript *@
@foreach (Template template in Model.Templates)
{            
    buildTemplate(JsonConvert.SerializeObject(template));        
}

По какой-то причине Razor считает, что buildTemplate - это метод С#, который он не может найти, и он buildTemplate.

Кто-нибудь делал это раньше? Любой совет?

Спасибо,

Филипп

Теги:
razor
asp.net-mvc

2 ответа

3
Лучший ответ

Вы можете использовать

@: buildTemplate(@JsonConvert.SerializeObject(template));

или же

<text>
buildTemplate(@JsonConvert.SerializeObject(template));
</text>
2

Попробуйте добавить <script> Tags

@* Build out entire Template structure in JavaScript *@
@foreach (Template template in Model.Templates)
{            
    <script>buildTemplate(JsonConvert.SerializeObject(template))</script>        
}

Я не тестировал этот код

Ещё вопросы

Сообщество Overcoder
Наверх
Меню