2012-05-31 2 views
2

У меня есть 2 автозаполненных текстовых поля на моей форме. Я хочу, чтобы динамическое изменение источника во втором текстовом поле автозаполнения, если значение было выбрано из первого.Autocomplete Source

фрагмент моей разметки ниже:

$(function() { 
    $("#SelectedAddress").autocomplete({ 
     source: "/CreateFIS/GetProperties", 
     select: function(event, ui) { 
      if (ui.item) { 
       event.preventDefault(); 
       $('#SelectedAddress').val(ui.item.label); 
       $('#SelectedAddressId').val(ui.item.value); 
       getPropertyInformation(ui.item.value); 
      } 
     }, 
     focus: function(event, ui) { 
      if (ui.item) { 
       event.preventDefault(); 
       $('#SelectedAddress').val(ui.item.label); 
       $('#SelectedAddressId').val(ui.item.value); 
       //getPropertyInformation(ui.item.value); 
      } 
    } 
    }); 
}); 

$(function() { 
    $("#SelectedScheme").autocomplete({ 
     source: "/CreateFIS/GetSchemes", 
     select: function (event, ui) { 
      if (ui.item) { 
       event.preventDefault(); 
       $('#SelectedScheme').val(ui.item.label); 
       $('#SelectedSchemeId').val(ui.item.value); 
      } 
     }, 
     focus: function (event, ui) { 
      if (ui.item) { 
       event.preventDefault(); 
       $('#SelectedScheme').val(ui.item.label); 
       $('#SelectedSchemeId').val(ui.item.value); 
      } 
     } 
    }); 
}); 


<tr> 
        <td style="width:200px;"><label for="addresses">Please Select A Scheme</label> </td> 
        <td style="width:600px;">@Html.TextBoxFor(model => model.SelectedScheme, new { @class = "largeTextBox" })</td> 
        <td style="width:200px;"> @Html.ValidationMessageFor(model => model.SelectedSchemeId) </td> 
       </tr> 
       <tr> 
        <td style="width:200px;"><label for="addresses">Please Select A Property </label> </td> 
        <td style="width:600px;">@Html.TextBoxFor(model => model.SelectedAddress, new { @class = "largeTextBox" })</td> 
        <td style="width:200px;"> @Html.ValidationMessageFor(model => model.SelectedAddressId) </td> 
       </tr> 

, что это лучший способ acomplish это?

ответ

1

Используйте метод option изменить источник:

var source = $(".selector").autocomplete("option", "source", "/New/Source"); 
Смежные вопросы