ошибка cshtml при @model.Идентификатор местоположения равен нулю

#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. @Деймон, я обновил свой ответ