как прочитать значения javascripts и отправить их как переменную c #

#asp.net #asp.net-mvc-3

#asp.net #asp.net-mvc-3

Вопрос:

У меня есть выпадающий список следующим образом:

  @Html.DropDownList("studentList", myModel.GetMyList())
  

У меня есть переменная, которая хранит выбранное значение в javascript.

  userID = $("#studentList> option:selected").attr("value")
  

Однако мне нужно отправить выбранное значение на c # моему контроллеру. Как я могу этого добиться?

Как мне прочитать выбранное значение из выпадающего списка в c # или как я могу «перевести» значение javascript в c #, которое можно изменять?

Ответ №1:

Это «просто», создайте скрытое поле и сохраните выбранные значения в нем, прежде чем отправлять свои данные на сервер.

чтобы получить выбранные значения, попробуйте что-то вроде этого:

 var myValues= new Array();
$("#studentList> option:selected").each(function(){
    myValues.push($(this).attr('value'));
})

$('#hiddenField').attr('value', myValues.join(','));
  

На стороне сервера просто нужно разделить строку, чтобы получить значения

Ответ №2:

Попробуйте поместить значение в скрытое поле через JS

 <%=Html.Hidden("student", "none")%>
  

Затем получите доступ к значению скрытого поля из c#

Ответ №3:

Выбранное значение в вашем списке со списком уже должно быть отправлено на сервер, пока оно находится в форме. Есть ли причина, которой недостаточно?