【问题标题】:Adding to a dropdown in MVC3添加到 MVC3 中的下拉列表
【发布时间】:2011-09-12 04:18:39
【问题描述】:

问题:如何在 MVC3 的下拉菜单中优雅地添加更多课程

我正在使用单独的屏幕,但理想情况下希望将所有内容都放在同一个屏幕上,可能使用 ajax 和 jquery。

【问题讨论】:

    标签: jquery ajax model-view-controller asp.net-mvc-3


    【解决方案1】:

    我最终只是为我的“子”项目添加了另一个提交按钮,并在此处的第二个答案中调用它:

    How do you handle multiple submit buttons in ASP.NET MVC Framework?

    【讨论】:

      【解决方案2】:

      我发现一个更好的解决方案是使用 jquery.ui 自动完成。然后,您可以轻松添加课程。我之前在类似的场景中非常成功地使用过它。您还可以获得对大型列表进行 ajax 调用的优势。

      这里是一些示例 jquery 代码,它根据用户在文本框中键入的内容从服务器获取列表(routeList 是显示课程列表的框,routeId 是一个隐藏字段,其中包含所选的 id路线):

      $("#routeList").autocomplete({
          source: function (request, response) {
              $("#ajax_loader").show();  //Gets the whirly graphic going
              $("#routeId").val("0");
              var postData = { term: request.term };
      
              var jqxhr = $.post("/Ajax/RouteAutoComplete", $.postify(postData), function (data) {
                  $("#ajax_loader").hide();
                  response(data);
              });
          }
          ,
          minLength: 1,
          select: function (event, ui) {
              $("#routeId").val(ui.item ? ui.item.id : "0");
          }
      });
      

      当你回帖时,如果 routeId=0,那么你可以根据 routeList 中的文本添加一个新课程

      【讨论】:

        猜你喜欢
        • 2012-05-29
        • 2012-05-14
        • 2012-09-18
        • 2012-02-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多