2014-01-20 150 views
0

我想根據ViewBag值允許的ViewBag.Category過濾下面的ProductData下拉列表。我需要傳遞給GetProductData()的viewbag值。我怎麼能做到這一點。謝謝綁定KendoUi下拉列表

$("#ProductData").kendoDropDownList({ 
      dataTextField: "OptionName", 
      dataValueField: "OptionID", 
      optionLabel: { 
       OptionName: "Please Select", 
       OptionID: "" 
      }, 
      dataSource: { 
       transport: { read: { url: '@(Url.Content("~/ProductDetails/GetProductData"))'} } 
      } 

     }); 



<input type="ProductData" id="ProductData" name="ProductData" required validationMessage="Please select a product" style="width:110px; font-size:11px; margin-left:12px"/><span class="k-invalid-msg" data-for="ProductData"></span> 

控制器:

//需要篩選基於viewbag.category值要發送參數getProductData

public JsonResult GetProductData() 
     { 
      var productList = new TREntities(); 
      string Role = ViewBag.Role; 
      return Json(productList .ConfigOptions.Select(c => new { OptionID = c.OptionID, OptionName = c.OptionName, OptionDetails = c.OptionDetails, OptionTypeID = c.ConfigTypeID }) 
         .OrderBy(c => c.OptionName).Where(e => e.OptionID == 33), JsonRequestBehavior.AllowGet); 

    } 
+0

做()? Like getProductData(string catagory)? – MustafaP

+0

是的。字符串類別應該來自我認爲使用viewbag的剃刀頁面。歡迎任何其他想法thx – Supermode

回答

1
transport:{ read: { 
      dataType: "json", 
      url: "ProductDetails/GetProductData", 
      data: getTestData 
     }} 

     function getTestData() 
     { 
       return {testID: parameterToSent} // you can take parameterToSent from where you want 
     }; 

public JsonResult GetProductData(string testID) 
    { 
     ... 

    } 
+0

這就是你從參數發送參數到控制器的方式。我不知道你的控制器功能是真是假 – MustafaP