2013-08-06 12 views
5

Jak zaimplementować wtyczkę chosen dla MVC 3?Jak zaimplementować wiele opcji wyboru w MVC 3 za pomocą wtyczki "selected.js"

dla tego typu produkcji

enter image description here

+2

Czy zapoznać się z dokumentacją? Próbowałeś już czegoś? Czy napotkasz jakieś szczególne trudności? –

+0

Tak, sprawdzam dokumentację i próbuję teraz działać poprawnie. Ale problem polega na tym, że nie mogę znaleźć ID po wybraniu adresu e-mail Id. np. w bazie danych EmailID = [email protected] i ID = 125 Nie mogę znaleźć "ID = 125" w dowolnym miejscu. – MSTdev

Odpowiedz

3

mam reconfigure wybrany plugin jak poniżej i działa prawidłowo.

Moje maszynki:

<div style="width: 750px; clear: both; margin-left: 170px;"> 

      @Html.ListBox(
          "Emailaddress", 
          ViewBag.EmailaddressList as MultiSelectList, 
          new { @class = "chosen-select", data_placeholder = "Choose a Emailaddress...", style = "width:750px;", tabindex = "4" } 
         ) 
</div> 

Dodaj ten skrypt po kodzie HTML Razor

<script src="@Url.Content("~/Scripts/chosen.js/chosen.jquery.js")" type="text/javascript"></script> 
     <script type="text/javascript"> 
      var config = { 
       '.chosen-select': {}, 
       '.chosen-select-deselect': { allow_single_deselect: true }, 
       '.chosen-select-no-single': { disable_search_threshold: 10 }, 
       '.chosen-select-no-results': { no_results_text: 'Oops, nothing found!' }, 
       '.chosen-select-width': { width: "95%" } 
      } 
      for (var selector in config) { 
       $(selector).chosen(config[selector]); 
      } 
    </script> 

Moje viewbag:

ViewBag.Skills = new MultiSelectList(EmailaddressList, "Id", "EmailId"); 
+0

W jaki sposób ustawić to dla właściwości modelu (lista ) –

1

myślę, że należy używać w taki sposób.

@Html.DropDownListFor(model => model.CountryId, new SelectList(Model.Countries, "ID", "Name"), "select", new { @ID = "ddlCountry", @class = "chosen-select", multiple = "multiple", Style = "width: 150px;" }) 

to ci pomoże.

+0

Czy kiedykolwiek byłeś używany z class = "chzn-select"? – MSTdev

+0

yes @Imran i użyłem – Rajpurohit

+1

Próbowałem, ale nie działałem po zastosowaniu klasy = "selected-select", a następnie działało – MSTdev

6

To jest mój kod jak zrobić chosen.js pracować z javascript/MVC

To jest mój kod dla mojego rozwijanej

@Html.DropDownListFor(m => m.CategoryId, 
            new SelectList(Model.Categories, "Id", "Name"), 
            "Choose a Category...", 
            new 
            { 
             id = "CategoryId", 
             multiple = "", 
             @class = "chzn-select srs-select search-dropdown", 
             data_placeholder = "Choose a Category..." 
            }) 

Tutaj używam 'chzn-select' stylizacji

- W przygotowanym dokumencie należy wywołać funkcję .chosen().

$(document).ready(function() { 

    $('.chzn-select').chosen(); 
}); 

w JavaScript, aby odzyskać to, co zostało wybrane, jest to kod

kodu do pobierania elementów wybranych w dropdownbox

var selectedCategoryId = $('Select#CategoryId').val(); 
    var selectedCategories = ""; 

    if (selectedCategoryId != null) { 
     $.each(selectedCategoryId, function (index, value) { 
      selectedCategories = selectedCategories + value + ","; 
     }); 
    } 

Zasadniczo selectedCategories ma identyfikator wybranych elementów, oddzielone przez ","

Aby zaktualizować menu z wybranymi wartościami

Kopiowanie wartości do tablicy

var categoryArray = new Array(); 

... jest kod, który inicjuje tablicę whih wartości, które zostały wybrane wcześniej.

// kod, aby dokonać wyboru, tablica ma swoje wartości.

$('Select#CategoryId').val(categoryArray); 

$('.chzn-select').trigger('chosen:updated'); 

Nadzieja to pomaga

Powiązane problemy