#javascript #asp.net-mvc #razor
#язык JavaScript #asp.net-mvc #бритва
Вопрос:
В cshtml у меня есть модель @Model для регистрации.
Модель регистрации имеет поле LocationID.
Когда я использую приведенное ниже утверждение, оно работает, когда идентификатор местоположения существует. Однако, когда идентификатор местоположения равен нулю, он выдает ошибку.
параметры var = {Идентификатор местоположения : @Модель.Идентификатор местоположения};
Когда я отлаживаю javascript, он просто говорит var params = {Идентификатор местоположения: };
Мне нужен способ преобразования cshtml в @Model.Идентификатор местоположения равен 0, если значение равно нулю.
Я также попытался использовать @Model.Идентификатор местоположения ?? 0, но это преобразуется в {пустой} ?? 0 в javascript.
Пожалуйста, помогите.
Ответ №1:
самый простой способ-добавить скрытое поле
lt;input type="hidden" value="@Model.LocationID" id="locationId" /gt;
язык JavaScript
var params = { LocationID : 0}; var locationId=$("#locaionId").val(); if (locationId gt; 0) params.LocationID = locationId; ....
Комментарии:
1. Спасибо за комментарий. Когда я попытался это сделать, он преобразует код в var LocationID = 0; если ( gt; 0) LocationID = ; параметры var = { LocationID: Идентификатор местоположения };
2. @Деймон, Кто преобразует ваш код?
3. Javascript преобразовал его, когда я запустил проект.
4. @Деймон, я обновил свой ответ