从数据库填充JQueryUI

时间:2015-03-24 20:00:07

标签: javascript asp.net-mvc jquery-ui razor

我正在编写一个ASP.NET MVC 4应用程序。我对网络编程环境比较陌生;我想我掌握了模型和控制器部件的要点,包括存储库和工作单元模式。但是我在客户方面迷失了方向。假设我的控制器中有这个动作方法:

//I have a Brand table in my Entity framework model
public ActionResult GetBrands()
{
   var result = _unitOfWork.BrandRepository.GetBrands();
   return Json(result, JsonRequestBehavior.AllowGet);
}

我迷失了Javascript,Ajax和JQueryUI。我在主视图(Index.cshtml)中创建了一个静态JQueryUI selectmenu:

<select name="brands" id="brands">
          <option>Brand1</option>
          <option>Brand2</option>
          <option selected="selected">Brand3</option>
          <option>Brand4</option>
          <option>Brand5</option>
</select>

如何调用我的操作方法来填充品牌的选择菜单?

1 个答案:

答案 0 :(得分:1)

由于我不知道“BrandRepository”的内容是什么,这是一般答案。

如果你设置使用jquery和json填充它,这是一个例子:

<script type="text/javascript">

$(function() { //only call when the DOM is ready
   alert('DOM is ready!');
   $.getJSON("/MyController/GetBrands/", function(result) {
      alert('The controller action got hit successfully');
      var options = $("#brands");
      options.html(''); //clears the current options
      alert('The result was: ' + JSON.stringify(result));
      $.each(result, function(i, item) {
         options.append('<option id="' + item.Id + '">' + item.Name '</option>');
      });
   });
});

</script>

这假设品牌在有效的json中由 Id 名称组成。