2015-12-21 3 views
1

В MVC 4 у меня есть текстовое поле с функциями Autocomplete в частичном представлении. Я использую этот частичный вид в двух представлениях, в представлении 1 и в представлении 2.In View 1, он работает нормально, поскольку в представлении 1 нет обратной передачи, в то время как в представлении 2 у меня есть кнопка отправки, вызывающая обратную передачу, и после этой обратной передачи частичная информация отображается на экране или же она скрыта. Автозаполнение здесь не работает.JQuery Autocomplete не работает после обратной передачи

$("#txtProduct").autocomplete({ 
      source: function (request, response) { 
       $.ajax({ 
        type: "POST", 
        data: { term: request.term }, 
        datatype: JSON, 
        url: 'UploadEligibilityCodes/GetAllMatchingProducts', 
        success: function (data) { 

         response($.map(data, function (value, key) { 
          return { 
           label: value.ProductName.concat("(", value.ProductId, ")"), 
           value: value.ProductName, 
           pid: value.ProductId 
          }; 
         })) 
        } 

       }); 
      }, 
      select: function (event, ui) { 
       $('#hdnProductIdSearch').val(ui.item.pid); 

      } 
     }); 

Это код моего текстового поля определяется в Частичный вид с именем SearchFilters.cshtml и видом 2, который использует этот частичный вид следующим образом.

@using (Html.BeginForm("Validate","UploadEligibilityCodes",FormMethod.Post, new {id="UploadForm" , enctype = "multipart/form-data" })) 
    { 
<div class="col-sm-1 form-group"> 
          <button type="submit" class="SIMPLDocumentUploadSave" id="importbtn" value="Import" style="width: 100px">&nbsp;Import</button> 
         </div> 
} 

<div class="col-sm-12 form-group SIMPLAdvancedFilterOptions"> 
           @Html.Partial("SearchFilters") 
         </div> 

Я видел несколько примеров использования Sys.WebForms.PageRequestManager в ASP.Net, но то же самое я не могу применить его HTML из MVC application.Please помощи :)

ответ

0

Вы можете заменить ваш отправить кнопку с обычным и позвонить submit() на форме вручную с помощью jQuery? Это может помочь вам с проблемой обратной передачи

+0

Мне нужно загрузить файл в эту кнопку отправки. Если я заменяю это на тип кнопки и выписываю ajax для передачи этого файла в действие контроллера, он передает файл как null.Thats причина, я держу его как отправьте – user1595214

+0

, поэтому вы должны представить всю форму '$ (form) .submit()' – Andrew

+0

Я не могу понять это, не могли бы вы рассказать подробнее. – user1595214

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