2015-08-27 6 views
0

Я новичок в MVC. Я пытаюсь создать заказ для клиента, так что в основном человек будет избирать клиента из списка телефонных номеров. Поэтому мы должны спросить у клиента их номер телефона, и по мере ввода номера список номеров должен быть в списке ниже (AJAX). Я добавил код AJAX, но когда я начинаю вводить цифры в моем представлении, я получаю ошибку «Not Found».AJAX возвращает ошибку «Не найдено»

This is my view screen as you can see the error

Это код для текстового поля

  <div class="form-group"> 
       @Html.LabelFor(model => model.CustomerID, "Customer Cell", htmlAttributes: new { @class = "control-label col-md-2" }) 
       <div class="col-md-10" onkeyup="Autocomplete()" onselect=""> 

        @Html.EditorFor(model => model.CUSTOMER.customer_cell, new { htmlAttributes = new { @class = "autocomplete form-control", id="customercell" } }) 
        @Html.ValidationMessageFor(model => model.CustomerID, "", new { @class = "text-danger" }) 


       </div> 
      </div> 
     </div> 

Это код для моей функции автозаполнения

<script> 
    function Autocomplete() { 


     var number = document.getElementById('customercell').value; 

     $.ajax({ 
      type: 'GET', 
      url: "AutoComplete.cshtml", 
      data: "Customernumber=" + number, 

      dataType: "json", 
      //contentType: "application/json", 
      success: function (html) { 

       $(".autocomplete").autocomplete({ 
        source: html 
       }); 

      }, 

      error: function (XMLHttpRequest, textstatus, error) { 

       alert(error); 
      } 
     }); 
    }; 
</script> 

Это мой автозаполнения класс:

@{ 
    var db = Database.Open("ThruppsGrocersContext"); 
    var sql = "SELECT CUSTOMER.customer_cell FROM CUSTOMER WHERE CUSTOMER.customer_cell LIKE @0"; 
    var term = Request["Customernumber"] + "%"; 
    var result = db.Query(sql, term); 
    var data = result.Select(p => new { label = p.CUSTOMER.customer_cell}); 
    Json.Write(data, Response.Output); 
} 
+3

Вы используете это неправильно. Перечитайте документацию автозаполнения и посмотрите примеры – mplungjan

+0

Возможно, это: http://stackoverflow.com/questions/21385892/how-to-use-source-function-and-ajax-in-jqueryu-ui-autocomplete или http: //stackoverflow.com/questions/11729588/understanding-and-implementing-jquery-autocomplete-with-ajax-source-and-appendto – mplungjan

+0

'url' в' AJAX' должен быть 'controller/ActionMethod', а не' cshtml 'страница. – Akshay

ответ

0

изменить данные ajax, может быть исправить

data: {Customernumber : number} 
+0

Пожалуйста, подумайте над редактированием сообщения, чтобы добавить больше объяснений о том, что делает ваш код и почему он решит проблему. Ответ, который в основном содержит только код (даже если он работает), обычно не помогает OP понять их проблему. – SuperBiasedMan

Смежные вопросы