2015-07-08 3 views
0

Jquery автозаполнения не работает я не знаю, почему же код работает на моей другой форме, но не работает в таком виде ... , пожалуйста, помогите я не знаю, почему его не маршрутизацией на действияJquery автозаполнения не загружая

@Html.TextBoxFor(model => model.Lot_no, new { @class = "text-field validate[required]"}) 
 
         @Html.HiddenFor(model => model.Lot_ID)

<script type="text/javascript"> 
 
    $(document).ready(function() { 
 
     
 

 
     $("#Lot_no").autocomplete({ 
 

 
      source: function (request, response) { 
 
       alert('ss') 
 
       var LotList = new Array(); 
 
       $.ajax({ 
 
        async: false,      
 
        cache: false, 
 
        type: "POST", 
 
        url: '@Url.Action("GetAutoFillData", "StoreParts")', 
 
        data: { "LotNumber": request.term }, 
 
          success: function (data) { 
 
        
 
      for (var i = 0; i < data.length ; i++) { 
 
     LotList[i] = {label: data[i].Lot_no, Id: data[i].Lot_ID, Cost: data[i].TotalCost_AED }; 
 
          } 
 

 

 
          if (data.length > 0) { 
 

 
           response(LotList); 
 

 
          } 
 
          else { 
 
           response([{ label: 'No results found.', Id: -1 }]); 
 
          } 
 
         
 
        } 
 

 
        } 
 

 
       }); 
 

 
      }, 
 
      
 
     }); 
 
    }); 
 
</script>

public JsonResult GetAutoFillData(string LotNumber) 
 
     { 
 

 

 
      List<ScrapSaleModel> result = new List<ScrapSaleModel>(); 
 

 
      Cls_ScrapSale ObjAutoFill = new Cls_ScrapSale(); 
 

 

 
      DataTable dt = ObjAutoFill.getLOTNumberAuto(1, LotNumber); 
 

 
      if (dt.Rows.Count > 0) 
 
      { 
 

 
       foreach (DataRow item in dt.Rows) 
 
       { 
 
        result.Add(new ScrapSaleModel { Lot_ID = Convert.ToInt32(item["Lot_ID"]), Lot_no = item["Lot_Number"].ToString(), TotalCost_AED = Convert.ToDecimal(item["COST"]) }); 
 

 
       } 
 

 
      } 
 

 

 
      return Json(result, JsonRequestBehavior.AllowGet); 
 
     }

Файлы включены совершенно Пожалуйста, помогите мне

+0

Ваше действие называется? –

+0

no thats проблема действия не вызывает –

+0

вы видели консоль на firebug, если возникла какая-либо ошибка –

ответ

0

Или украсить ваш ActionMethod - GetAutoFillData с [HttpPost] атрибутом в верхней части, как показано ниже:

[HttpPost] //Put this 
public JsonResult GetAutoFillData(string LotNumber) 
{ 
     //Remaining Code 
} 

или удалить type:'POST' из ajax и сохранить type:'GET', как указано ниже:

$.ajax({ 
     async: false,      
     cache: false, 
     type: "GET", 
     //Other Codes 
}); 
Смежные вопросы