从填充了 AJAX 的下拉列表中获取控制器的操作方法中的值

Get value in action method of controller from a dropdown list which was populated with AJAX

本文关键字:获取 操作方法 控制器 下拉列表 填充 AJAX      更新时间:2023-09-26

我有一个填充了Ajax调用的下拉列表,现在我必须选择填充的值并将其存储在控制器操作方法的数据库表中。我在堆栈溢出链接 1、链接 2 上浏览了这两个答案并尝试提供的解决方案,但它不起作用。

操作方法:

public ActionResult ClassCreated(Class c)
{
  c.Course.title = Request.[""];
  c.ClassName=Request["ClassName"];
  c.strength = Int16.Parse(Request["strength"]);
  c.rollNoPattern = Request["rollNoPattern"];
  db.Classes.Add(c);
  db.SaveChanges();
  return RedirectToAction("Index");
}

Jquery:

<script>
  $(document).ready(function () {
    $('#b1').click(function () {
      var userName = "Hello"
      $.getJSON("/classes/getCourseList?username=" + userName, function (data1) {
      var myOptions =
      {
        val1: data1.title
      };
      var $mySelect = $('#s1');
      $.each(myOptions, function (val, text) {
        $mySelect.append($('<option />',
        {
          value: val,
          text: text
        }));
      });
    });
   });
  });
</script>
$("#b1").on("click", function () {
            var url = "/classes/getCourseList/";
            $.ajax({
                type: 'POST',
                url: url,
                dataType: "json",
                traditional: true,
                success: function (data) {
                    $("#dropdownId").empty();
                    $("#dropdownId").append($("<option>").val("").text("Please select Category"));
                    $.each(data, function () {
                        $("#dropdownId").append($("<option>").val(this.Value).text(this.Text));
                    });
                }
            });
            return false;
        });