반응형
JavaScript의 Razor 모델 개체에서 JSON 개체를 가져 오는 방법
viewmodel 객체에서 다음은 속성입니다.
public IList<CollegeInformationDTO> CollegeInformationlist { get; set; }
VIEW에서 javascript는 다음과 같습니다.
var obj = JSON.stringify('@Model.CollegeInformationlist');
alert(obj[1].State); //NOT WORKING, giving string char
$.each('@Model.CollegeInformationlist', function (i, item) {
var obj = JSON.stringify(item);
var r = $.parseJSON(obj);
alert(r.State); //just giving undefined.
});
여기에서 javascript에서 JSON 객체를 얻는 방법을 안내하십시오.
다음을 사용할 수 있습니다.
var json = @Html.Raw(Json.Encode(@Model.CollegeInformationlist));
이것은 다음을 출력합니다 (모델을 보지 않고 필드를 하나만 포함했습니다).
<script>
var json = [{"State":"a state"}];
</script>
AspNetCore
AspNetCore는 Json.Serialize다음을 사용합니다.Json.Encode
var json = @Html.Raw(Json.Serialize(@Model.CollegeInformationlist));
MVC 5/6
이를 위해 Newtonsoft를 사용할 수 있습니다.
@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model,
Newtonsoft.Json.Formatting.Indented))
이렇게하면 json 형식화, 즉 위와 같이 들여 쓰기, 카멜 케이스 등을 더 많이 제어 할 수 있습니다.
ASP.NET Core에서 IJsonHelper.Serialize ()가 반환 IHtmlContent되므로 .NET 에 대한 호출로 래핑 할 필요가 없습니다 Html.Raw().
다음과 같이 간단해야합니다.
<script>
var json = @Json.Serialize(Model.CollegeInformationlist);
</script>
사용 후 코드var json = @Html.Raw(Json.Encode(@Model.CollegeInformationlist));
당신은 사용이 필요합니다 JSON.parse(JSON.stringify(json));
yor 모델에서 json 객체를 만들고 싶다면 다음과 같이하십시오.
foreach (var item in Persons)
{
var jsonObj=["FirstName":"@item.FirstName"]
}
또는 Json.Net 을 사용 하여 모델에서 json을 만듭니다.
string json = JsonConvert.SerializeObject(person);
컨트롤러에서보기로 개체를 전달하고 인코딩하지 않고 마크 업으로 변환 한 다음 json으로 구문 분석합니다.
@model IEnumerable<CollegeInformationDTO>
@section Scripts{
<script>
var jsArray = JSON.parse('@Html.Raw(Json.Encode(@Model))');
</script>
}
반응형
'Program Club' 카테고리의 다른 글
| JSON.NET 데이터 구문 분석 중 구문 분석 오류 무시 (0) | 2021.01.07 |
|---|---|
| mdDialog에 데이터 전달 (0) | 2021.01.07 |
| 조건에서 변수를 업데이트하는 가장 빠른 방법은 무엇입니까? (0) | 2021.01.06 |
| .htm 또는 .html 확장자-어느 것이 정확하고 다른 것은 무엇입니까? (0) | 2021.01.06 |
| 설정 앱을 열지 않아도 Settings.bundle의 설정을 기본값으로 할 수 있습니까? (0) | 2021.01.06 |