0

У меня есть два адреса Mailing и Business в пользовательском интерфейсе, и я использую флажок «То же, что и выше», когда пользователь выбирает этот флажок и бизнес-адрес ниже будут заполнены вышеуказанным почтовым адресом, используя JQuery. Я использую @Html.DropDownListFor() для государств.Как связать выбранное значение DropDownListДля объекта selectedId в viewmodel, когда выбранное значение DropDownListFor изменено JQuery

Для этого интерфейса у меня есть ViewModel, у которого есть свойство int selectedBusinessId {get; set;}, которое установлено как [Обязательно].

Когда пользователь вручную меняет выпадающее значение, DropDownListFor привязывает выбранное значение к вышеуказанному свойству viewmodel, здесь нет проблемы. Поэтому, когда пользователь выбирает флажок «То же, что и выше», раскрывающееся меню «Состояние бизнес-адреса» устанавливается в «Состояние почтового адреса» ИСПОЛЬЗОВАНИЕ JQuery, НО проблема возникает, когда он отправляет запрос на ошибку модели, которое требуется для состояния.

Так как связать выбранное значение DropDown с viewmodel int selectedBusinessId, когда DropDownListFor выбранное значение изменено jquery?

ViewModel класса

public class ContactInformationViewModel 
{ 

    [Required(ErrorMessage = "State is required")] 
     public string mailingAddrSelectedState_Id { get; set; } 
     public IEnumerable<SelectListItem> states {get; set;} 
     [Required(ErrorMessage = "State is required")] 
     public string businessAddrSelectedState_Id { get; set; } 
     [Required(ErrorMessage = "State is required")] 
     public string faaAddrSelectedState_Id { get; set; } 
    } 

UI

Почтовый адрес Состояние выпадающий

@Html.DropDownListFor(model => model.mailingAddrSelectedState_Id, Model.states, "-- Select --", new { tabindex = 6 }) 

Бизнес Адрес Государство выпадающий

@Html.DropDownListFor(model => model.businessAddrSelectedState_Id, Model.states, "-- Select --", new { tabindex = 14 })        

Поэтому, когда пользователь выбирает флажок «То же, что и выше», я выбираю состояние бизнес-адреса как состояние рассылки, используя jquery, но я думаю, что мне также необходимо привязать выбранное состояние бизнес-адреса к businessAddrSelectedState_Id в ViewModel, чтобы при его отправке оно выбранного государства.

JQuery

$('#Same_as_above').change(function(){ 
     if (this.checked == true) 
     { 
      var mail_state = $('#mailingAddrSelectedState_Id :selected').val(); 
      $('#businessAddrSelectedState_Id').val(mail_state); 
      $("#businessAddrSelectedState_Id").attr("disabled", "disabled"); 
     } 

Спасибо

+0

Что вы сделали до сих пор? Отправьте код! – baao

+0

Вот какой код, спасибо Майкл – MilDet

+0

".... в состояние почтового адреса ИСПОЛЬЗОВАНИЕ JQuery" Использование Jquery как? Покажите нам свой код. – TCHdvlp

ответ

0

Я нашел виновника. Модель не смогла связать ее с тех пор, как я отключил раскрытие области состояния Business Address в jquery. Я прокомментировал это и прошел гладко. Я думаю, что вместо отключения я сделаю это только для чтения.

$('#Same_as_above').change(function(){ 
    if (this.checked == true) 
    { 
     var mail_state = $('#mailingAddrSelectedState_Id :selected').val(); 
     $('#businessAddrSelectedState_Id').val(mail_state); 
    // $("#businessAddrSelectedState_Id").attr("disabled", "disabled"); 
    } 

Спасибо, что нашли время для рассмотрения моей проблемы, я ценю.

Смежные вопросы