Как изменить или отобразить объект JSON, используя jquery и mvc Model

0
var dataToSend = '@Html.Raw(Json.Encode(Model.PageInput))';

мои dataToSend содержат данные ниже:

"{"id":"1","name":"stackoverflow","count":25}"

Как я могу получить доступ к данным?

Я пробовал следующее:

alert(dataToSend.id)

или

alert(dataToSend[0].id)

или

alert(dataToSend[1].id)

Все выходы: undefined

не работает. Но почему?!!!

  • 0
    "{" id ":" 1 "," name ":" stackoverflow "," count ": 25}" это не в правильном формате, количество должно быть "count": "25".
Теги:
asp.net-mvc-4

2 ответа

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

заменить:

var dataToSend = '@Html.Raw(Json.Encode(Model.PageInput))';

с:

var dataToSend = @Html.Raw(Json.Encode(Model.PageInput));

(это должен быть object, а не string)

а затем попробуйте:

dataToSend.name

PS:

вы также можете анализировать строки в json с помощью javascript.

строка> json:

var obj = JSON.parse(str);

json> string:

var str = JSON.stringify(obj);

надеюсь, это поможет.

1

ваши dataToSend - это строка, поэтому она не будет доступной,

вы можете попробовать

var dataToSend = @Html.Raw(Json.Encode(Model.PageInput));

поскольку результат будет отображаться как JSON до того, как он попадет к клиенту.

или вы можете использовать библиотеку JSON и делать

var dataToSend = JSON.parse('@Html.Raw(Json.Encode(Model.PageInput))');

Ещё вопросы

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