получить значение из @Model внутри скрипта jquery - PullRequest
11 голосов
/ 24 апреля 2011

Как я могу получить значение из @Model внутри скрипта jquery. Я хочу получить какое-либо свойство по индексу (определяемому выбором строк в моей пользовательской таблице) из моей модели, которая равна IEnumerable<T>. Я не хочу показывать это свойство в таблице и делать что-то вроде cell .val()

например:

var selectedRow = $(this).parent().children().index($(this)) - 1;

и я хочу что-то вроде

 @Model.ElementAt(selectedRow).SomeProperty

внутри скрипта

Спасибо

Ответы [ 2 ]

35 голосов
/ 24 апреля 2011

@ Model - это объект .NET (на стороне сервера), ваши сценарии JQuery работают на стороне клиента и работают с объектами JavaScript.Вы не можете напрямую обращаться к объектам .NET на стороне сервера из кода на стороне клиента - вам потребуется некоторая сериализация JSON вашей модели (или, возможно, только интересующие вас свойства).Затем внутри скрипта вы можете сделать что-то вроде

var model = @Html.Raw(Json.Encode(Model))

, чтобы поместить вашу модель в переменную JavaScript, а затем получить доступ ко всему через «модель».

0 голосов
/ 24 апреля 2011

используйте атрибуты данных html5 в вашем представлении .., чтобы сделать вашу модель доступной в html затем получить к ним доступ через js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...